【问题标题】:Can all flash games be readily ported to adobe air for deployment on ios?所有 Flash 游戏都可以轻松移植到 adobe air 以在 ios 上部署吗?
【发布时间】:2012-07-14 04:37:54
【问题描述】:

所有 Flash 游戏都可以轻松移植到 adobe air 以在 ios 上部署吗?例如,如果我在 AS3 中开发了一个 2D 平台游戏,我是否可以简单地使用 Adob​​e AIR 将其重新打包以部署到 iOS 上,而无需修改代码库?

如果可能,我该怎么做?只是使用 AIR SDK 的 ADT 工具重新打包?

在我的游戏中,我使用鼠标和键盘来控制角色...英雄跟随鼠标光标并左键触发...这将如何转化为触摸?

我是 AIR 的新手,甚至还没有 iPhone。但我很想知道这些可能性。

任何帮助/提示/建议将不胜感激。

【问题讨论】:

    标签: actionscript-3 flash air adobe


    【解决方案1】:

    任何 Flash 内容都可以通过 AIR 打包到 iOS、Android 和 BlackBerry。

    在 Flash Professional 中,这可以通过更改发布设置来完成:

    针对 AIR 3.3 是最优的,对于 iOS 具有更高的性能。此 AIR SDK 可以覆盖到 Flash Professional 发布设置;或者,您可以使用 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。

    性能也是一个因素 - 输入帧上的大量动画和矢量图形需要针对移动平台进行优化。

    每个设计都有很多方面需要考虑。

    应用在每台设备上以不同的分辨率全屏运行。您可以利用优雅的动态调整大小系统来适应这些多个屏幕或针对每个应用指定特定的分辨率。

    如果您现有的 Flash 项目的宽高比不兼容,则需要更新布局。

    鼠标可以很好地转化为触摸,但有一些不直观的细微差别。例如,悬停通常很难在触摸中实现。此外,鼠标光标不会像将手放在游戏区域上进行触摸那样遮挡视线。

    移动触控设备增加了与多点触控和可能被利用的手势交互的能力。

    屏幕键盘可能被激活;但是,它将占用您的一部分视口,并且对于大多数游戏来说很难与之交互。

    您需要以一种与您的游戏玩法保持一致的方式来翻译键盘和鼠标事件。

    参考资料:

    【讨论】:

    • 感谢 Jason,您非常友善和慷慨地抽出时间详细回答我的问题。我很感激。再次感谢!
    【解决方案2】:

    当然有可能,但根据游戏的不同,您可能会注意到桌面设备和移动设备之间的性能差异,尤其是在有大量矢量动画、过滤器等的情况下。

    如果您想在移动设备上获得完美的性能,您应该使用Starling Framework 之类的东西重写您的应用程序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-11-13
      • 1970-01-01
      • 1970-01-01
      • 2010-09-10
      • 2011-11-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多