从命令行创建 iPhone 应用程序安装程序文件

您可以从命令行运行 Packager for iPhone。Packager for iPhone 将 SWF 文件字节代码及其他源文件转换成本机 iPhone 应用程序。

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

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

    pfi -package -target [ipa-test ipa-debug ipa-app-store ipa-ad-hoc] -provisioning-profile PROFILE_PATH SIGNING_OPTIONS TARGET_IPA_FILE APP_DESCRIPTOR SOURCE_FILES

    更改引用 pfi 以包括 pfi 应用程序的完整路径。pfi 应用程序安装在 Flash Professional CS5 安装目录的 pfi/bin 子目录中

    选择对应于您要创建的 iPhone 应用程序类型的 -target 选项:

    • -target ipa-test — 选择此选项可快速编译要在开发人员 iPhone 上进行测试的应用程序版本。

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

      您可以包含以下 -connect 选项 ( CONNECT_OPTIONS ) 之一,以指定运行该调试器的开发计算机的 IP 地址:

      • -connect — 应用程序将尝试连接到用于编译该应用程序的开发计算机上的调试会话。

      • -connect IP_ADDRESS — 应用程序将尝试连接到具有指定 IP 地址的计算机上的调试会话。例如:

        -target ipa-debug -connect 192.0.32.10
      • -connect HOST_NAME — 应用程序将尝试连接到具有指定主机名称的计算机上的调试会话。例如:

        -target ipa-debug -connect bobroberts-mac.example.com
      注: 在 Flash Professional CS5 附带的 Packager for iPhone Preview 中不包含 -connect 选项。通过在 Flash Professional CS5 中选择“帮助”>“更新”来更新 Packager for iPhone。

      -connect 选项是可选项。如果不指定该选项,则生成的调试应用程序不会尝试连接到托管调试器。

      如果调试连接尝试失败,应用程序会显示一个对话框,要求用户输入调试主机的 IP 地址。如果设备未连接到 wifi,连接尝试可能失败。如果设备已连接,但不在调试主机的防火墙之后,也可能失败。

      有关详细信息,请参阅 调试 iPhone 应用程序

      还可以包括 -renderingdiagnostics 选项以启用 GPU 呈现诊断功能。有关详细信息,请参阅 调试 iPhone 应用程序 中的“使用 GPU 呈现诊断进行调试”。

    • -target ipa-ad-hoc — 选择此选项可创建用于临时部署的应用程序。请参见 Apple iPhone 开发人员中心

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

      用应用程序的供给配置文件的路径替换 PROFILE_PATH 。有关供给配置文件的详细信息,请参见 从 Apple 获取开发人员文件

      替换 SIGNING_OPTIONS 以引用 iPhone 开发人员证书和密码。应使用以下语法:

      -storetype pkcs12 -keystore P12_FILE_PATH -storepass PASSWORD

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

      替换 APP_DESCRIPTOR 以引用应用程序描述符文件。

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

请看以下示例:

pfi -package -target ipa-test -storetype pkcs12 -keystore "/Users/Jeff/iPhoneCerts/iPhoneDeveloper_Jeff.p12" -storepass dfb7VKL19 "HelloWorld.ipa" "HelloWorld-app.xml" "HelloWorld.swf" "Default.png" "icons/icon29.png" "icons/icon57.png" "icons/icon512.png"

此示例编译 HelloWorld.ipa 文件时使用了下列内容:

  • 使用证书密码 dfb7VKL19 的特定 PKCS#12 证书

  • HelloWorld-app.xml 应用程序描述符文件

  • 源 HelloWorld.swf 文件

  • 特定的 Default.png 和图标文件

pfi 应用程序根据应用程序描述符文件、SWF 文件及其他资源将应用程序编译为 IPA 文件。

在 Mac OS 上,您可以使用在钥匙串中存储的证书,方法是将下列选项添加到 pfi 命令:

 -alias ALIAS_NAME -storetype KeychainStore -providerName Apple

使用要使用的证书的别名替换 ALIAS_NAME 。当指向在 Mac 钥匙串中存储的证书时,应指定别名而不是指向证书文件位置。