检测android webview

2023-11-24

我有一个html-javascript页面,我需要检测它何时在网络视图上打开(例如在 facebook webview、twitter webview 等内部),以及如果它是一个 webview - 显示另一个内容。

Note:我不控制第三方 Android 应用程序,因此我无法更改他们的代码。

我已经找到了一种检测 IOS webview 的方法(在 stackoverflow 上找到它):

var isIosWebview =/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(navigator.userAgent)

现在我正在寻找一个可以检测Android web 视图的javascript 代码。

Help?


您无法仅使用用户代理字符串来检测它,因为任何使用 WebView 的应用程序都可以将 UA 字符串设置为它想要的任何内容。

如果你仍然坚持使用 UA 字符串,这是官方文档的解释:最初,基于 Chromium 的 WebView 使用.0.0.0作为 Chrome 版本后缀;在较新的版本中; wv已添加到 UA 字符串的平台部分。请注意,KitKat 之前的 WebView 没有Chrome部分。请参阅有关此内容的旧帖子:Android、webview 用户代理与浏览器用户代理

WebView 参与的另一个暗示是存在X-Requested-With带有应用程序包名称的 HTTP 标头。请注意,此标头也是由 XMLHttpRequest 设置的,因此您需要查找标头的实际值。

WebView不支持iframe的说法是不正确的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检测android webview 的相关文章

随机推荐

  • 为什么禁止内联脚本(内容安全策略)?

    我想知道规范中的引用 https dvcs w3 org hg content security policy raw file tip csp specification dev html 为了获得最大的好处 作者需要将所有内联脚本和样式
  • Keras:制作神经网络来查找数字的模数

    我是一位经验丰富的 Python 开发人员 但在机器学习方面完全是新手 这是我第一次尝试使用 Keras 你能告诉我我做错了什么吗 我正在尝试制作一个神经网络 它接受二进制形式的数字 并在除以 7 时输出其模数 我的目标是执行一个非常简单的
  • HTTP重定向代码之间的区别

    我不清楚各种 HTTP 3XX 重定向代码之间的差异 是的 我已经阅读了规范 但标准与实际实践之间似乎存在一些差异 The 301重定向代码似乎足够清楚 这意味着资源已永久移动到另一个 URI 并且将来的请求应使用该 URI And the
  • IIS HTTP 到 HTTPS 相对重定向

    我最近为我的网站获得了 SSL 证书 并希望将所有流量重定向到 HTTPS 我已经拥有了一切要去的地方https mydomain com但如果有人进来http mydomain com anotherpage它会删除其他页面 只将用户带到
  • 是否有一种相对简单的方法可以在 C# 或 PowerShell 中完成 CD 或 DVD?

    首先 对术语进行一些澄清 经过最终确定 我的意思并不是要结束会议 而是要结束会议 我的意思是 将导出内容写入 CD 或 DVD 时 信息将无法再通过通常的方式 Roxio Nero Windows 资源管理器等 添加到其中 我对此做了相当多
  • 获取字符串中某个索引之后第一个检测到的空格的索引

    在要格式化的字符串中 主要是用不同的符号替换字符以在 UI 上进行渲染测试 我必须检测 然后跳过此 字符中的第一个空格的所有字符 并且必须对字符串中的所有实例重复该操作 E g abcd 1 s efgh 2 d ijkl在这个字符串中 我
  • 为什么 memcpy() 和 memmove() 比指针增量更快?

    我正在复制 N 个字节pSrc to pDest 这可以在单个循环中完成 for int i 0 i lt N i pDest pSrc 为什么这比memcpy or memmove 他们使用什么技巧来加快速度 因为 memcpy 使用字指
  • 假执行Powershell脚本

    在 Fake 构建自动化工具中执行 Powershell 脚本的最佳方法是什么 我觉得这个问题应该有一个明显的答案 但一直没能通过搜索找到任何东西 正如您在评论中提到的 使用PowerShell类使这变得非常容易 r FakeLib dll
  • 如何在反序列化期间以编程方式选择构造函数?

    我想反序列化System Security Claims Claim对象按以下方式序列化 Issuer LOCAL AUTHORITY OriginalIssuer LOCAL AUTHORITY Type http my org ws 2
  • 如何标准化 Lucene 分数?

    我需要将 Lucene 分数标准化为 0 到 1 之间 例如 随机查询返回以下分数 8 864665 2 792687 2 792687 2 792687 2 792687 0 49009037 0 33730242 0 33730242
  • JavaScript 中的“变量 = 变量 || {}”是什么意思 [重复]

    这个问题在这里已经有答案了 变量的初始化代表什么 var variable variable 应该如何以及何时使用 该行代码执行以下操作 IF variable未定义 或具有错误值 THEN将其设置为空对象 ELSE什么都不做 从技术上讲
  • java.lang.AbstractMethodError:javax.ws.rs.core.UriBuilder.uri

    我尝试启动应用程序但使用Tomcat 7我有一个这样的例外 我认为这可能是Maven dependency 但我确定 如果有人知道发生了什么事 请回答 例外 message Servlet execution threw an except
  • C++ 按常量引用传递并按常量引用返回

    我想了解退货是否有任何好处const参考 我有一个阶乘函数 通常如下所示 unsigned long factorial unsigned long n return n 0 1 n factorial n 1 我假设当我们经过时性能会有所
  • swift/ios 在后台刷新应用程序数据

    我正在编写一个 iOS Swift 应用程序 它每 X 分钟从 REST 服务读取数据并相应地更新 UI 现在我希望当应用程序置于后台时 会以 X 分钟的间隔调用一个任务 从 REST 服务读取数据 并且如果刚刚读取的数据满足给定条件 则显
  • 我应该将实体框架视为非托管资源吗?

    我正在使用一个在其构造函数中使用 EF 引用的类 我已经实施了IDisposable 但我不确定是否需要析构函数 因为我不确定是否可以将 EF 分类为非托管资源 如果 EF 是托管资源 那么我不需要析构函数 所以我认为这是一个合适的示例 p
  • 动画过渡在横向方向上无法正常工作

    我的应用程序仅支持横向右方向 我正在尝试转换到视图控制器的视图 但是当它执行过渡动画 例如卷曲 时 视图旋转 90 度 因此 模拟器仍处于横向右方向 但视图显示为旋转 90 度 过渡完成后 它会旋转到正确的方向 我的代码如下 IBActio
  • MATLAB 中的广义特征向量?

    有没有一种方法可以在特征值多重性高的情况下使用单个或至少很少的命令来获取广义特征向量 如果每个特征值的重数为 1 我可以使用 V D eig A 但此命令不适用于多个特征值 根据 Matlab 文档 V D eig A B 生成广义特征值的
  • 为什么使用 RelayCommand 或 DelegateCommand 而不是仅仅实现 ICommand?

    我刚刚学习 WPF 中的 MVVM 我对 WPF 和 MVVM 都是全新的 我了解它是如何工作的 但从未使用过它 我在网上找到的每一篇教程 文章都使用 RelayCommand 或 DelegateCommand 在我看来 这些模式迫使虚拟
  • Fstream 无法创建新文件

    我在一个项目中使用文件管理器 这样读写对我来说就不那么麻烦了 或者说 如果我没有花这么多时间调试它的话 所以 这个舒适舱实际上给我带来了压力和时间 惊人的 问题似乎是fstream 在继续之前 先介绍一下 FileManager 类的结构
  • 检测android webview

    我有一个html javascript页面 我需要检测它何时在网络视图上打开 例如在 facebook webview twitter webview 等内部 以及如果它是一个 webview 显示另一个内容 Note 我不控制第三方 An