【发布时间】:2011-10-10 14:57:31
【问题描述】:
Javascript 如何检测网站是在 Android 的股票浏览器中加载还是在另一个应用程序的 WebView 中加载?我想在这两种情况下运行稍微不同的代码。
【问题讨论】:
-
检查 webview 用户代理是否与 Android 库存浏览器有任何不同。您可以通过访问此站点轻松检查它。 whatsmyuseragent.com 但是我相当肯定用户代理会完全一样,在这种情况下我不知道。
-
除非您是相关 WebView 的创建者。在这种情况下,我认为您可以为用户代理添加任何您想要的内容
-
如果您负责应用程序,您是否可以在加载页面时发送特定的用户代理,然后使用上面 Caimen 的建议?使用WebView's setUserAgentString函数,你可以设置一个特定的用户代理,然后使用javascript来检测差异。
-
我是使用 WebView 的应用程序的作者。我希望有一种方法可以在不编写额外代码的情况下检测它,但这是临时解决方案:
this.webView.getSettings().setUserAgentString(this.webView.getSettings().getUserAgentString() + getString(R.string.user_agent_suffix));其中 user_agent_suffix 是“AppName/1.0”。我希望这符合用户代理字符串标准。
标签: javascript android