2011-06-09 68 views
3

我正在使用PhoneGap創建本機iOS應用程序。該應用實現了iOS 方案,以便可以像myapp://?參數那樣從移動Safari中調用它。 應用程序活動取決於輸入參數,我通過處理'deviceready'事件來讀取這些參數。PhoneGap iOS應用程序'deviceready'事件 - 初始條目vs resume

問題是,在初始執行後,應用程序將保留在後臺,並且任何後續調用(來自瀏覽器)都不會觸發另一個「已準備就緒」,因此我無法獲取新參數。

任何想法?謝謝!

回答

4

你是否設法讓簡歷事件發生在最後?

我有這個麻煩,以及 - 我有以下代碼:

window.addEventListener('load', function() { 
    document.addEventListener('deviceready', onDeviceReady, false); 
}, false); 

function onDeviceReady() { 
    document.addEventListener('resume', onResume, false); 
    document.addEventListener('pause', onPause, false); 
    document.addEventListener('online', onOnline, false); 
    document.addEventListener('offline', onOffline, false); 
} 

function onResume() { 
    alert('resume'); 
} 

function onPause() { 
    alert('pause'); 
} 

function onOnline() { 
    alert('online'); 
} 

function onOffline() { 
    alert('offline'); 
} 

而且雖然deviceready和在線活動似乎是射擊,我似乎無法得到恢復事件火。任何人都可以擺脫這一點,將不勝感激!

0

這個問題已經過了一年多了,但我想回復未來的讀者。

如果您希望您的應用在初始加載(恢復時)後響應url方案,則需要在全局上下文中定義一個名爲handleOpenURL()的函數。然後,當您的應用程序恢復時,此功能將自動啓動。

function handleOpenURL(invokeString) { 
    // do something with the invoke string 
} 
相關問題