2012-11-22 21 views
0

我正在使用Titanium.App.addEventlistener來捕獲由Titanium.App.fireEvent從本地webview觸發的事件。Titanium.App.addEventListener導致ios設備上出現「未定義」對象應用程序錯誤

在網頁視圖:

Titanium.App.fireEvent('webviewToTi', {id:0}); 

在應用程序:

Ti.App.addEventListener('webviewToTi', function(e){ 
    alert('I am in app.js: ' + e.id); 
}); 

這非常適用於iOS的模擬器,但是當我在我的iPad上運行它,我得到的死亡Appcelerator的紅屏:

'undefined'不是一個對象(評估'Titanium.App.addEventListener')

我用Ti.App.addEventlistener運行了幾個不同的測試,甚至在一個剝離下來的項目中,我還是得到了這個問題。

有沒有人有任何想法,爲什麼這個錯誤存在專門在iOS設備,但不是在模擬器?

任何人都可以提出一種替代方式來與我的webview溝通。

(請web視圖的不是內容是本地的,並不遙遠,我知道這種類型的通信是不可能的遠程網站)

回答

0

我想通了這一點,所以我要發帖分享我發現的:

似乎把代碼放在單獨的文件中,並使用Titanium.include適用於模擬器,但不適用於iphone或ipad。

爲了擺脫這個錯誤,我不得不把所有的代碼放到一個文件中。這使得它有點難以閱讀,而且我更喜歡更好的解決方法,但是現在看來這似乎起作用了。

相關問題