5

如何检测在设备内作为 phonegap 应用程序运行的 HTML 页面存在一些问题。

大多数解决方案(这里这里)已经

  1. 检测浏览器代理是否为 iPhone/iPad/Android/Blackberry
  2. 使用 'deviceready' 事件来检测是否在设备内运行。
  3. 使用 URL 检测协议是 HTTP 还是 FILE

还有其他解决方案吗?因为我在编译应用程序之前在本地运行开发 HTML 文件,所以这 3 个对我都不起作用,因此它会检测到 1)。和 2)。将开火和 3)。确实是FILE协议。

4

2 回答 2

2

在本地文件和移动网站中,deviceready 不会触发,因为它是 PhoneGap 特定事件。所以你可以在设备就绪事件中设置你的 IsRunningOnPhoneGap 标志。

于 2013-03-11T15:18:41.117 回答
0

这有效:

if (window.cordova)
{
    document.addEventListener("deviceready", onReady, false);
}
else 
{
    onReady();
}
于 2016-05-13T01:49:51.573 回答