appcelerator から Titanium をインストールし、"KitchenSink" サンプル アプリケーションをビルドしました。
すべてがうまく機能します。JavaScript コードがビルドされたアプリのどこにあるのか疑問に思っています。
で見つけた Xcode プロジェクトと結果アプリケーションを grep しましたが、アプリケーション内で使用されている文字列テキストでさえ、ファイルLibrary/Application Support/iPhone Simulator/....KitchenSink.app
から関数名を見つけることができません。.js
私が見つけた最も近い情報は、ここでの答えです:Appcelerator Titanium Mobileはどのように機能しますか? しかし、私はそのプロセスがどのように機能するかを明確に理解していません。
JavaScriptコードはバイナリコードにコンパイルされていますか(その場合、どのコンパイラが使用されていますか?)、それとも特別なデータ形式に変換され、実行中のアプリケーションで解釈されるだけですか?
アップデート:
これは、KitchenSink の build/android ディレクトリで確認できるものです。
michal:bin mac$ find . -name table_view_layout\*
./assets/Resources/examples/table_view_layout.js
./assets/Resources/examples/table_view_layout_2.js
./assets/Resources/examples/table_view_layout_3.js
./assets/Resources/examples/table_view_layout_4.js
./assets/Resources/examples/table_view_layout_5.js
./classes/org/appcelerator/generated/examples/table_view_layout.class
./classes/org/appcelerator/generated/examples/table_view_layout_2.class
./classes/org/appcelerator/generated/examples/table_view_layout_3.class
./classes/org/appcelerator/generated/examples/table_view_layout_4.class
./classes/org/appcelerator/generated/examples/table_view_layout_5.class
michal:bin mac$ unzip -t app.apk | grep table_view_layout
testing: assets/Resources/examples/table_view_layout.js OK
testing: assets/Resources/examples/table_view_layout_2.js OK
testing: assets/Resources/examples/table_view_layout_3.js OK
testing: assets/Resources/examples/table_view_layout_4.js OK
testing: assets/Resources/examples/table_view_layout_5.js OK
以前は app.apk を調べていませんでしたが、各 JavaScript ファイルに対応するこれらのクラス ファイルしか確認できませんでした。したがって、AndroidではjavascriptがJVM用にコンパイルされていると想定しました。これらが app.apk で見つからないのはなぜですか?