【问题标题】:Detect if running inside PhoneGap/ Cordova检测是否在 PhoneGap/Cordova 内运行
【发布时间】:2013-03-11 01:55:45
【问题描述】:

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

大多数解决方案(herehere)已经

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

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

【问题讨论】:

    标签: cordova native detect


    【解决方案1】:

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

    【讨论】:

    • DeviceReady 如果加载了cordova.js 文件并放置了监听器,则触发。这无助于为 web 和 cordova 应用程序使用相同的代码。
    【解决方案2】:

    这行得通:

    if (window.cordova)
    {
        document.addEventListener("deviceready", onReady, false);
    }
    else 
    {
        onReady();
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多