0

我正在使用 Titanium.App.addEventlistener 来捕获由 Titanium.App.fireEvent 从本地 web 视图触发的事件。

在网络视图中:

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 进行通信的替代方式。

(请不要 webview 的内容是本地的,而不是远程的,我知道远程网站无法进行这种类型的通信)

4

1 回答 1

0

我想通了,所以我发帖分享我的发现:

似乎将代码放在单独的文件中并使用 Titanium.include适用于模拟器,但不适用于 iphone 或 ipad。

为了摆脱错误,我不得不将所有代码放入一个文件中。这使它有点难以阅读,我希望有一个更好的修复,但这似乎目前有效。

于 2012-11-26T10:41:21.597 回答