下面是血的教训:
1.当用adt打包AIR程序时,可能会遇到Error creating AIR file: Could not generate timestamp: Connection timed out: connect这个问题。 在adt的命令参数中有一个-tsa url的选项用于产生AIR文件的时间戳。adt这个打包工具是用java语言编写的,如果在打包air文件的时候没有指定-tsa选项,则会用默认的 https://timestamp.geotrust.com/tsa作为url来产生时间戳,所以当断网的时候运行adt打包命令很可能就会出现 Error creating AIR file: Could not generate timestamp: Connection timed out: connect的错误输出。当遇到此问题时,请检查你的网络连接是否正常工作,如正常,则试试让adt打包一个不产生时间戳的AIR程序,即修改或加上-tsa none选项参数就可以解决AIR的打包问题了。不过,记住这样产生的AIR程序只能做开发阶段用,在产品发布时要记得加上时间戳。
2.打包指令:(红字改)
"D:\software_save\fb\Adobe Flash Builder 4.7 (64 Bit)\sdks\4.6.0\bin\adt(adt文件目录)" -package -tsa none -storetype PKCS12 -keystore a.p12(.p12文件) -storepass 1234(.p12密码) -target ane facebook.ane(生成的ane) extension.xml -swc *.swc -platform Android-ARM -C Android-ARM .
3.flash builder4.6需要在编译器附带参数中加入“-swf-version 13”否则打包ane时会出现Invalid swc file.The extension NameSpace requires the swf verison to be 13 or lower
4.extension.xml不可以有任何注释,不然后面使用的时候会出现问题(XML文件不存在或者无效),导致了Flex手机项目找不到ASlib的类。
其他参考及学习:
https://github.com/recter/Anti-ADT/tree/master/RDT
http://blog.csdn.net/linxcool/article/details/7770179
http://bbs.9ria.com/thread-197503-1-1.html