从问题“How Does Appcelerator Titanium Mobile Work?”我知道JS被交叉编译成本机代码。但这会发生在哪里?我在开源Titanium代码中找不到任何代码。 Appcelerator的网站在该过程的交叉编译部分也非常稀少。
答案 0 :(得分:2)
在Windows / Android上的Titanium 1.4中,查看C:\ ProgramData \ Titanium \ mobilesdk \ win32 \ 1.4.0 \ android \ compiler.py,你会发现:
def compile_into_bytecode(self,paths):
jar_path = os.path.join(self.template_dir,"js.jar")
for package in paths:
args = [self.java,"-cp",jar_path,"org.mozilla.javascript.tools.jsc.Main","-opt","9","-nosource","-package",package,"-d",self.classes_dir]
count = 0
for path in paths[package]:
# skip any JS found inside HTML <script>
if path in self.html_scripts: continue
args.append(path)
count+=1
self.compiled_files.append(path)
if count > 0: run.run(args)
答案 1 :(得分:0)
我相信Titanium Developer会在构建过程中编译它。如果你查看Project / build / android或Project / build / iphone目录,你会看到代码输出。
在Titanium Mobile 1.3中,他们引入了XCode项目生成,因此您现在可以使用XCode打开项目。