【问题标题】:From SWF to AIR to iOS application从 SWF 到 AIR 再到 iOS 应用程序
【发布时间】:2012-07-18 03:47:09
【问题描述】:

我有现有的 Flash 应用程序,它可以编译为 SWF 并在 Web 上运行。我正在考虑将该应用程序转换为在 iPhone/iPad 等移动设备上运行。

我发现现在有一种方法可以到达publish Adobe Air applications on mobile devices。我的想法是为什么不 convert SWF to AIR application 然后使用该 AIR 应用程序在移动设备上发布。是否有意义?这甚至可能或可行吗?

人们如何将现有的 Flash SWF 应用程序转换为在移动设备上运行?

【问题讨论】:

标签: iphone ios flash air flash-cs5


【解决方案1】:

我已经做了一年左右的确切事情。

您必须在 Mac 上使用钥匙串设置您的证书,并且您必须从 Mac 上传应用程序。但是,我没有 Mac 。 . .相反,我使用(macincloud 或其他)在远程 Mac 上租用时间,并使用 DropBox 来回发送文件。

根据 SWF 的创建方式,您不一定需要购买 Adob​​e 产品。我使用FlashDevelop,它会自动设置最新的 Air 和 Flex SDK。只要您拥有开发者许可证,就可以从中创建 Air 应用程序,还可以创建 IPA 文件以加载到 iTunes(或 Google Play 或其他)中。

确保您也阅读了@JasonSturges 的回复。很好的提示和链接。

【讨论】:

  • 那么您有一个可编译为 SWF 和移动应用程序的代码库吗?或者您是否有两条代码行,一条用于生成 SWF,另一条用于移动应用程序?我猜应该是后者。
  • 不,这是一个代码库,但您可能会说,有“替代结局”。我使用 Flash IDE 进行编译,并使用编译器条件(APPDEV::forIOS(实际上可以是任何有效的 const 名称)设置为 true 或 false)来排除代码段。我认为您也可以使用 ADT 命令行(-define=APPDEV::forIOS,true-define+=APPDEV::forIOS,true,以及 XML 文件中的一些设置代码)来执行此操作,但从未尝试过,因为我也使用 Flash 的 grx 功能。
【解决方案2】:

有几种方法可以实现这一点:

  1. 您可以下载Adobe AIR SDK,并关注他们的helpthis tutorial。如果你不习惯命令行,这种方法会有点乏味,但它可能是最强大的选项,因为你可以调整和控制很多选项。

  2. 如果您有 FLA 文件,最新版本的 Flash CS6 应该为您提供更轻松地创建 IOS IPA 文件的方法。如果您是 Windows 用户,则需要获取 p12 文件以及移动配置文件。 Adobe 有关于如何在没有 Mac 的情况下执行此操作的文档。最终,当您的 IPA 适合 AppStore 时,您将需要一台 Mac。

请记住,SWF 的用户体验不会立即适用于 iOS。例如,按钮的大小、交互式用户控件的可用性以及最重要的鼠标悬停事件有时会对移动应用的体验产生不利影响。

但这些问题与 SWF 无关,因为我在其他基于 HTML 的网络应用程序中也看到了类似的问题。

祝你好运,我会说编写 Flash 并且它可以在包括 iPhone/iPad 在内的任何地方运行,这确实是大多数人都不知道的一件了不起的事情。

【讨论】:

    【解决方案3】:

    这个问题只是answered here,但回顾一下,任何 Flash 内容都可以使用 AIR 打包到 iOS 或其他移动设备。

    AIR 可以覆盖到 Flash Professional 或 Flash Builder,或者您的 SWF 可以使用 ADT 命令行打包程序打包:

    • 下载 AIR 3.0 SDK。
    • 确保 JRE,或使用来自 Flash Builder 的 JRE。
    • 执行 adt 将您的 SWF 打包到 IPA:

      adt -package -target [ipa-test | ipa-debug | ipa-app-store | ipa-ad-hoc]
          -keystore iosPrivateKey.p12 -storetype pkcs12 -storepass qwerty12
          -provisioning-profile ios.mobileprovision
          HelloWorld.ipa
          HelloWorld-app.xml
          HelloWorld.swf icons Default.png
      

    请务必注意,所有可执行代码必须驻留在单个 SWF 中才能在 iOS 平台上运行。不支持 SWFLoading 或执行代码的任何动态加载的 SWF。因此,请将您的所有 Flash 链接到一个 SWF。

    还有其他注意事项,例如optimizing performance 和处理多种屏幕分辨率和纵横比。

    参考资料:

    【讨论】:

    • 谈到性能优化,我建议使用当前的 AIR 3.3 SDK,因为它的性能明显优于以前的版本。
    猜你喜欢
    • 2011-07-12
    • 1970-01-01
    • 2012-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-07
    • 1970-01-01
    相关资源
    最近更新 更多