adt 命令行打包air app应用

在 iOS 上,ADT 将 SWF 文件字节代码和其他源文件转换为本机 iOS 应用程序。

  1. 使用 Flash Builder、Flash Professional 或命令行编译器创建 SWF 文件。

  2. 打开命令外壳或终端并导航到您的 iPhone 应用程序的项目文件夹。

  3. 然后,使用 ADT 工具创建 IPA 文件,语法如下:

    <pre>adt -package

                                       -target [ipa-test | ipa-debug | ipa-app-store | ipa-ad-hoc | 
                                       ipa-debug-interpreter | ipa-debug-interpreter-simulator 
                                       ipa-test-interpreter | ipa-test-interpreter-simulator] 
                                       -provisioning-profile PROFILE_PATH 
                                       SIGNING_OPTIONS 
                                       TARGET_IPA_FILE 
                                       APP_DESCRIPTOR 
                                       SOURCE_FILES 
                                       -extdir _extension-directory_ 
                                       -platformsdk _path-to-iossdk_ or _path-to-ios-simulator-sdk_</pre>
    

    更改引用 <samp class="codeph">adt</samp> 以包括 adt 应用程序的完整路径。adt 应用程序安装在 AIR SDK 的 bin 子目录中。

    选择对应于您要创建的 iPhone 应用程序类型的 <samp class="codeph">-target</samp> 选项:

    • <samp class="codeph">-target ipa-test</samp> — 选择此选项可快速编译要在开发人员 iPhone 上进行测试的应用程序版本。还可以使用 <samp class="codeph">ipa-test-interpreter</samp> 获得更快的编译速度,或使用 <samp class="codeph">ipa-test-interpreter-simulator</samp> 在 iOS Simulator 中运行。

    • <samp class="codeph">-target ipa-debug</samp> — 选择此选项可编译要在开发人员 iPhone 上测试的应用程序调试版本。通过此选项,您可以使用调试会话从 iPhone 应用程序接收 <samp class="codeph">trace()</samp> 输出。

        您可以包含以下 <samp class="codeph">-connect</samp> 选项 (<samp class="codeph">CONNECT_OPTIONS</samp>) 之一,以指定运行该调试器的开发计算机的 IP 地址:
      
        *   <samp class="codeph">-connect</samp> — 应用程序将尝试通过 wifi 连接到用于编译该应用程序的开发计算机上的调试会话。
      
        *   <samp class="codeph">-connect IP_ADDRESS</samp> — 应用程序将尝试通过 wifi 连接到具有指定 IP 地址的计算机上的调试会话。例如:
      
            <pre>-target ipa-debug -connect 192.0.32.10</pre>
      
        *   <samp class="codeph">-connect HOST_NAME</samp> — 应用程序将尝试通过 wifi 连接到具有指定主机名称的计算机上的调试会话。例如:
      
            <pre>-target ipa-debug -connect bobroberts-mac.example.com</pre>
      
        <samp class="codeph">-connect</samp> 选项是可选项。如果不指定该选项,则生成的调试应用程序不会尝试连接到托管调试器。或者可以指定 <samp class="codeph">‑listen</samp> 代替 <samp class="codeph">‑connect</samp> 以启用 USB 调试,如[通过 USB 使用 FDB 进行远程调试](WS901d38e593cd1bac7b2281cc12cd6bced97-8000.html)所述。
      
        如果调试连接尝试失败,应用程序会显示一个对话框,要求用户输入调试主机的 IP 地址。如果设备未连接到 wifi,连接尝试可能失败。如果设备已连接,但不在调试主机的防火墙之后,也可能失败。
      
        还可以使用 <samp class="codeph">ipa-debug-interpreter</samp> 获得更快的编译速度,或使用 <samp class="codeph">ipa-debug-interpreter-simulator</samp> 在 iOS Simulator 中运行.
      
        有关详细信息,请参阅[调试移动 AIR 应用程序](WSfffb011ac560372f-5d0f4f25128cc9cd0cb-7ffa.html)。
      
    • <samp class="codeph">-target ipa-ad-hoc</samp> — 选择此选项可创建用于临时部署的应用程序。请参见 Apple iPhone 开发人员中心

    • <samp class="codeph">-target ipa-app-store</samp> — 选择此选项可创建用于部署到 Apple 应用程序库的 IPA 文件的最终版本。

    用应用程序的设置配置文件的路径替换 _<samp class="codeph">PROFILE_PATH</samp>_。有关设置配置文件的详细信息,请参阅 iOS 设置

    构建在 iOS Simulator 中运行的应用程序时,使用 <samp class="codeph">-platformsdk</samp> 选项指向 iOS Simulator SDK。

    替换 <samp class="codeph">SIGNING_OPTIONS</samp> 以引用 iPhone 开发人员证书和密码。应使用以下语法:

    <pre>-storetype pkcs12 -keystore P12_FILE_PATH -storepass PASSWORD</pre>

    使用 P12 证书文件的路径替换 _P12_FILE_PATH_。使用证书密码替换 _PASSWORD_。(请参见以下示例。)有关 P12 证书文件的详细信息,请参阅将开发人员证书转换为 P12 keystore 文件

    <div class="note"><span class="notetitle">注:</span> 为 iOS Simulator 打包时可以使用自签名证书。</div>

    替换 <samp class="codeph">APP_DESCRIPTOR</samp> 以引用应用程序描述符文件。

    替换 <samp class="codeph">SOURCE_FILES</samp> 以引用项目(后面跟有任何其他要包含的资源)的主 SWF 文件。包括指向在 Flash Professional 中的应用程序设置对话框中或在自定义应用程序描述符文件中定义的所有图标文件的路径。此外,还要添加初始屏幕图片文件 Default.png。

    使用 <samp class="codeph">-extdir _extension-directory_</samp> 选项可指定包含应用程序使用的 ANE 文件(本机扩展)的目录。如果应用程序不使用本机扩展,请勿包含此选项。

    <div class="important"><span class="importanttitle">重要说明:</span> 请勿在您的应用程序目录中创建名为 <samp class="codeph">Resources</samp> 的子目录。运行时将自动创建具有此名称的文件夹以符合 IPA 包的结构要求。如果您自己创建“Resources”文件夹将导致致命冲突。</div>

<div class="section">

创建 iOS 包以便调试

若要创建一个 iOS 包以便安装在测试设备上,请使用 ADT package 命令,将目标类型设置为 _ios-debug_。在运行此命令前,必须已经从 Apple 获取一个开发代码签名证书和设置配置文件。

<pre>adt -package

                            -target ipa-debug 
                            -storetype pkcs12 -keystore ../AppleDevelopment.p12 
                            -provisioning-profile AppleDevelopment.mobileprofile 
                            -connect 192.168.0.12 | -listen 
                            myApp.ipa 
                            myApp-app.xml 
                            myApp.swf icons Default.png</pre>

<div class="note"><span class="notetitle">注:</span> 还可以使用 <samp class="codeph">ipa-debug-interpreter</samp> 获得更快的编译速度,或使用 <samp class="codeph">ipa-debug-interpreter-simulator</samp> 在 iOS Simulator 中运行</div>

请在一行内键入完整的命令;上面示例中出现换行符仅是为了阅读更加方便。另外,此示例假设指向 ADT 工具的路径存在于命令行 shell 的路径定义中。(有关帮助信息,请参阅路径环境变量。)

必须从包含应用程序文件的目录运行此命令。示例中的应用程序文件是 myApp-app.xml(应用程序描述符文件)、myApp.swf、图标目录和 Default.png 文件。

必须使用由 Apple 颁发的正确分发证书对应用程序进行签名;不得使用其他代码签名证书。

使用 <samp class="codeph">-connect</samp> 选项执行 wifi 调试。应用程序尝试使用在指定 IP 或主机名上运行的 Flash Debugger (FDB) 启动一个调试会话。使用 <samp class="codeph">-listen</samp> 选项执行 USB 调试。首先启动应用程序,然后启动 FDB,这时会启动运行中应用程序的调试会话。请参阅连接到 Flash 调试器以了解详细信息。

</div>

<div class="section">

创建 iOS 包以便提交到 Apple 应用程序库

若要创建一个 iOS 包以便提交到 Apple 应用程序库,请使用 ADT package 命令,将目标类型设置为 _ios-app-store_。在运行此命令前,您必须已经从 Apple 获取一个分发代码签名证书和设置配置文件。

<pre>adt -package

                            -target ipa-app-store 
                            -storetype pkcs12 -keystore ../AppleDistribution.p12 
                            -provisioning-profile AppleDistribution.mobileprofile 
                            myApp.ipa 
                            myApp-app.xml 
                            myApp.swf icons Default.png</pre>

请在一行内键入完整的命令;上面示例中出现换行符仅是为了阅读更加方便。另外,此示例假设指向 ADT 工具的路径存在于命令行 shell 的路径定义中。(有关帮助信息,请参阅路径环境变量。)

必须从包含应用程序文件的目录运行此命令。示例中的应用程序文件是 myApp-app.xml(应用程序描述符文件)、myApp.swf、图标目录和 Default.png 文件。

必须使用由 Apple 颁发的正确分发证书对应用程序进行签名;不得使用其他代码签名证书。

<div class="important"><span class="importanttitle">重要说明:</span> Apple 要求您使用 Application Loader 程序,以便将应用程序上载到应用程序库。Apple 仅针对 Mac OS X 发布了 _Application Loader_。因此,当您使用 Windows 计算机为 iPhone 开发 AIR 应用程序时,必须具有访问运行 OS X(版本 10.5.3 或更高版本)的计算机的权限,以便将应用程序提交到应用程序库。您可以从 Apple iOS 开发人员中心获取 Application Loader 程序。</div>

</div>

<div class="section">

创建 iOS 包以便进行临时分发

若要创建 iOS 包以便进行临时分发,请使用 ADT package 命令,将目标类型设置为 _ios-ad-hoc_。在运行此命令前,您必须已经从 Apple 获取适当的临时分发代码签名证书和设置配置文件。

<pre>adt -package

                            -target ipa-ad-hoc 
                            -storetype pkcs12 -keystore ../AppleDistribution.p12 
                            -provisioning-profile AppleDistribution.mobileprofile 
                            myApp.ipa 
                            myApp-app.xml 
                            myApp.swf icons Default.png</pre>

请在一行内键入完整的命令;上面示例中出现换行符仅是为了阅读更加方便。另外,此示例假设指向 ADT 工具的路径存在于命令行 shell 的路径定义中。(有关帮助信息,请参阅路径环境变量。)

必须从包含应用程序文件的目录运行此命令。示例中的应用程序文件是 myApp-app.xml(应用程序描述符文件)、myApp.swf、图标目录和 Default.png 文件。

必须使用由 Apple 颁发的正确分发证书对应用程序进行签名;不得使用其他代码签名证书。

</div>

<div class="section">

为使用本机扩展的应用程序创建 iOS 包

要为使用本机扩展的应用程序创建 iOS 包,请使用具有 <samp class="codeph">-extdir</samp> 选项的 ADT package 命令。使用与目标(<samp class="codeph">ipa-app-store</samp>、<samp class="codeph">ipa-debug</samp>、<samp class="codeph">ipa-ad-hoc</samp>、<samp class="codeph">ipa-test</samp>)相适应的 ADT 命令。例如:

<pre>adt -package

                            -target ipa-ad-hoc 
                            -storetype pkcs12 -keystore ../AppleDistribution.p12 
                            -provisioning-profile AppleDistribution.mobileprofile 
                            myApp.ipa 
                            myApp-app.xml 
                            -extdir extensionsDir 
                            myApp.swf icons Default.png</pre>

请在一行内键入完整的命令;上面示例中出现换行符仅是为了阅读更加方便。

关于本机扩展,本示例假设名为 <samp class="codeph">extensionsDir</samp> 的目录位于运行命令的目录中。<samp class="codeph">extensionsDir</samp> 目录包含应用程序所使用的 ANE 文件。

</div>

</div>

<div id="footer">

本产品经 Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License 许可 Twitter™ 与 Facebook 中的内容不在 Creative Commons 的条款约束之下。

</div>

添加新评论