我从appcelerator安装了Titanium并构建了"KitchenSink"示例应用程序.
一切正常,我只是想知道javascript代码在构建的应用程序中的最终位置.
我发现了Xcode项目和结果应用程序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
Run Code Online (Sandbox Code Playgroud)
之前我没有查看app.apk,我只能看到这些类文件对应于每个javascript文件.因此我假设在Android上javascript正在为JVM编译.为什么不能在app.apk中找到这些?