首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >非常依赖于ADT打包和iOS上的AIR原生扩展

非常依赖于ADT打包和iOS上的AIR原生扩展
EN

Stack Overflow用户
提问于 2012-02-16 05:15:31
回答 2查看 1.9K关注 0票数 1

所以我使用的是来自http://blog.aboutme.be/2011/12/10/udp-in-air-for-ios-using-a-native-ex the /的原生扩展

它带有一个flex演示应用程序,在FB中构建时,可以在Android和iOS上完美地工作。我用FB做了一个小的as3应用程序,它在安卓和iOS上也很好用。

然后,我从as3 FB项目中获取了app.xml,并将其用于我的flash pro/adt项目。我用adt构建了这个包,其中包含以下内容

Android:

启动adt -package -target apk -storetype pkcs12 -keystore androidTest.p12 NetPRO_Demo.apk NetPRO_Demo-app.xml NetPRO_Demo.swf 72icon.png -extdir extensions

iOS:

start adt -package -target ipa-ad-hoc -storetype pkcs12 -keystore Certificates.p12 -provisioning-profile CashRegisteriPad1.MobileProvisioning NetPRO_Demo.ipa NetPRO_Demo-app.xml NetPRO_Demo.swf 72icon.png -extdir extensions

安卓版本运行完美,而iOS版本则黑屏停机。我花了几天的时间来研究这个问题,我的ADT包装与FB包装不同,它只在iOS上损坏。

而且,如果我去掉了本机扩展,我的ADT打包就能正常工作。

EN

回答 2

Stack Overflow用户

发布于 2012-06-06 09:27:15

我也遇到了同样的问题--我的扩展在Android上运行正常,在ipa-test中运行iOS,但是在ipa-ad-hoc启动时死机了。

修复链接到iOS上的NativeExtension swc作为外部库。在命令行中,我必须修改提供给编译器的config.xml文件,如下所示:

之前:

代码语言:javascript
复制
<flex-config>
<swf-version>14</swf-version>
<target-player>11.2</target-player>
    <compiler>
        <headless-server>true</headless-server>
        <source-path>
            <path-element>src</path-element>
            <path-element>..</path-element>
        </source-path>
        <library-path>
            <path-element>../Extensions/ExampleExt/bin/iOSExampleExtension.swc</path-element>
            <path-element>${flexlib}/libs/air/airglobal.swc</path-element>
             <path-element>${flexlib}/libs/framework.swc</path-element>
        </library-path>
    </compiler>
</flex-config>

之后:

代码语言:javascript
复制
<flex-config>
<swf-version>14</swf-version>
<target-player>11.2</target-player>
    <compiler>
        <headless-server>true</headless-server>
        <source-path>
            <path-element>src</path-element>
            <path-element>..</path-element>
        </source-path>
        <external-library-path>
            <path-element>../Extensions/Telephony_iOS/bin/iOSTelephonyExtension.swc</path-element>
        </external-library-path>
        <library-path>
            <path-element>${flexlib}/libs/air/airglobal.swc</path-element>
             <path-element>${flexlib}/libs/framework.swc</path-element>
        </library-path>
    </compiler>
</flex-config>

希望这也能解决你的问题。

票数 1
EN

Stack Overflow用户

发布于 2012-03-06 08:42:04

在其余的文件之前,它似乎缺少一个参数-C。尝试:

start adt -package -target ipa-ad-hoc -storetype pkcs12 -keystore Certificates.p12 -provisioning-profile CashRegisteriPad1.mobileprovision NetPRO_Demo.ipa NetPRO_Demo-app.xml -C NetPRO_Demo.swf 72icon.png -extdir extensions

如果这还不能解决问题,我敢打赌你的附带条件的个人资料不是用于分发的,而是你试图将其打包为临时的。也许可以尝试不同的配置文件,或者将包装更改为ipa-debug-interpreter。另外,它会询问密码吗?也许也可以添加-storepass *yourpass*和iphone sdk -platformsdk /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9301518

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档