0

Titanium.App.addEventlistener を使用して、Titanium.App.fireEvent によってローカル Web ビューから発生したイベントをキャッチしています。

Web ビューで:

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

アプリ内:

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

これは iOS シミュレーターではうまく機能しますが、iPad で実行すると、Appcelerator の赤い画面が表示されます。

「未定義」はオブジェクトではありません (「Titanium.App.addEventListener」を評価します)

Ti.App.addEventlistener を使用していくつかの異なるテストを実行しましたが、他に何も含まれていない簡素化されたプロジェクトでも、この問題が発生します。

このエラーがiOSデバイスにのみ存在し、シミュレーターには存在しない理由を知っている人はいますか?

私のウェブビューと通信するための別の方法を誰かが提案できますか?

(webview のコンテンツはリモートではなくローカルであることに注意してください。この種の通信はリモート Web サイトでは不可能であることを認識しています)

4

1 に答える 1

0

私はこれを理解したので、私が見つけたものを共有するために投稿しています:

コードを別々のファイルに入れて Titanium.includeを使用すると、シミュレーターでは機能するようですが、iphoneやipadでは機能しません。

エラーを取り除くために、私はすべてのコードを1つのファイルに入れなければなりませんでした。これは少し読みづらくなります、そして私はより良い修正を好むでしょう、しかしこれは今のところうまくいくようです。

于 2012-11-26T10:41:21.597 に答える