我已经构建了一个具有简单本机扩展的AIR应用程序,该应用程序公开API以控制设备的音量。我目前的目标平台是iPad的iOS。该项目基于Nathan Weber的http://www.adobe.com/devnet/air/articles/building-ane-ios-android-pt1.html教程。无法从命令行编译AIR应用程序
虽然二进制编译通过Flash Builder接口正确,但我无法从命令行获得它的工作。这对于我们来说是必不可少的,以便与我们的自动化构建流程集成。我尝试了一切,直到找到Flash Builder在内部触发以执行编译过程,然后通过终端窗口手动运行完全相同的命令的确切Java进程命令行。命令和结果粘贴在下面。
bin-debug pranav.negandhi$ /usr/bin/java -Xms32m -Xmx1024m -jar '/Applications/Adobe Flash Builder 4.6/sdks/4.6.0 copy/lib/adt.jar' -package -target ipa-ad-hoc -provisioning-profile '/Users/pranav.negandhi/Documents/Adobe Flash Builder 4.6/ne-client/certs/clientdev.mobileprovision' -storetype pkcs12 -keystore '/Users/pranav.negandhi/Documents/Adobe Flash Builder 4.6/ne-client/certs/danapaniCertificate2013.p12' -storepass danapani2013 Main.ipa Main-app.xml Main.swf splash.jpg -extdir '/Users/pranav.negandhi/Documents/Adobe Flash Builder 4.6/.metadata/.plugins/com.adobe.flexbuilder.project.ui/ANEFiles/ne-client/com.adobe.flexide.multiplatform.ios.platform' -platformsdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk
ld: warning: PIE disabled. Absolute addressing (perhaps -mdynamic-no-pic) not allowed in code signed PIE, but used in _llvm_unwind from AOTBuildOutput-0.o. To fix this warning, don't compile with -mdynamic-no-pic or link with -Wl,-no_pie
ld: warning: multiple L$start$ labels found at same address in __ZN9NetStream12DispatchProcEP10NativeInfo at offset 0x06C0
忽略警告不起作用,因为产生的IPA从不安装到iPad上。当我通过iTunes同步设备时,iPad上的安装会失败,并显示简短的“主调试无法安装”消息。
在Flash Builder中使用相同的代码,本机扩展和配置文件。
我很高兴能有一些指针开始解决这个问题。