2013-03-11 64 views
4

如何檢測HTML頁面是否在設備內作爲phonegap應用程序運行,存在一些問題。檢測是否在PhoneGap/Cordova內部運行

大部分的解決方案(herehere)的已

  1. 檢測,如果瀏覽器代理爲iPhone/iPad的/安卓/黑莓
  2. 使用 'deviceready' 事件,如果一個設備內運行檢測。
  3. 使用URL檢測協議是HTTP還是FILE

是否有任何其他解決辦法?由於我在編譯應用程序之前在本地運行開發HTML文件,因此它們將檢測到1),所有3個都不適用於我。和2)。將會着火併且3)。確實是FILE協議。

回答

2

在本地文件和移動網站deviceready不會觸發,因爲它是一個PhoneGap特定事件。所以你可以在設備就緒事件中設置你的IsRunningOnPhoneGap標誌。

+0

令人驚訝後,我又試了一次,它的工作。 – 2013-03-12 11:02:24

+0

如果加載cordova.js文件並放置偵聽器,則會觸發DeviceReady。這無助於爲網絡和科爾多瓦應用程序使用相同的代碼。 – 2013-12-17 19:11:29

+0

請發佈完整的代碼回答。 – Louis 2014-04-15 09:54:06

0

這工作:

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