发布构建与Flash构建?

时间:2014-03-04 22:34:05

标签: actionscript-3 flash starling-framework

我正在使用Starling,我已经在flash IDE中构建了我的游戏。我可以在手机上测试一切,一切正常。现在我在starling wiki上读到,为了获得更好的性能,我需要构建一个“真正的”版本构建,并且Flash CC中发布的版本不是优化版本吗? 如果我理解正确,我怎么能将我的构建从Flash CC转换为真正的发布版本?

3 个答案:

答案 0 :(得分:1)

除了使用Flash Builder或FlashDevelop构建它之外,如果你有Flex SDK(如果你已经安装了这两个程序中的任何一个,你应该拥有它) - 如果没有,你可以从http://www.adobe.com/devnet/flex/flex-sdk-download.html下载它,在bin文件夹中,您可以找到optimizer.exe命令行工具。

它的作用是删除跟踪语句,调试代码(和符号)以及不必要的元数据 - 我认为这主要是“发布”版本所做的。要使用它,请使用Flash CC构建SWF,然后转到Flex SDK bin文件夹,并在命令行中键入:

optimizer -keep-as3-metadata Bindable Managed ChangeEvent NonCommittingChangeEvent Transient 
    -input PATH/TO/SWF/input_swf 
    -output PATH/TO/SWF/output_swf

您可以在此处获取更多信息:http://help.adobe.com/en_US/Flex/4.0/UsingSDK/WS2db454920e96a9e51e63e3d11c0bf674ba-7ff6.html#WS2db454920e96a9e51e63e3d11c0bf69084-7ad9

尝试并考虑适当的编码环境,而不是直接从Flash CC进行。我个人更喜欢FlashDevelop(http://flashdevelop.org/) - 它是免费的,快速的,从调试到发布的转换很简单。 Flash Builder在iOS发布方面具有优势,如果您拥有Creative Cloud会员资格,无论如何都要拥有它(否则它已付费)。它也是跨平台的,而FlashDevelop只是Windows。

答案 1 :(得分:0)

我在Project->Export Release Build中使用Flash Builder运行自动发布构建过程。或者您可以运行Ant构建(也使用Flash Builder / Eclipse)。

但就Flash IDE而言,我不确定是否存在这个确切的过程。您可以更改File->Publish中的某些高级设置,例如Omit trace语句(已选中),允许调试(未选中),这部分是发布版本所做的。

对于使用AIR的移动项目,还可以在快速构建或标准构建的配置下使用Flash Builder。

快速构建

  • 打包需要几秒钟,应用程序运行速度明显慢于发布版本

标准版

  • 打包需要几分钟,应用程序性能类似于发布版本

答案 2 :(得分:0)

AIR移动应用程序有几种类型的构建:

  • 调试(Android)
    • 在此构建类型中,CPU密集型任务需要更长的时间。
  • 快速调试(iOS)
    • 这种类型的调试构建非常慢。充其量,你看10fps。这是因为您在运行代码为AS3的虚拟机中运行应用程序(最终应用程序交叉编译为Objective-C)。这种类型的构建的好处是它可以在几秒钟内编译
  • 标准调试(iOS)
    • 这种类型的调试版本在性能方面类似于Android调试。 CPU密集型任务将大大减慢。这将需要30秒到5分钟,具体取决于您的计算机有多好。此代码交叉编译为Objective-C,尽管编译器不会通过任何优化运行它
  • 发布(Android和iOS)
    • 这是您提交到App Store或Play商店的构建类型。也不会接受非发布版本(非发布版本使用不同的证书签名)。这是您的应用程序的最佳性能,并且需要3-30分钟才能为iOS进行交叉编译(取决于计算机)。此外,在此处构建时有以下几种选择:
      • 俘虏运行时(Android)
        • 这会将AIR运行时与您的应用捆绑在一起。它会为你的APK增加约8-9MB的重量,但它不需要用户安装Adobe AIR应用程序来运行它。您应始终使用Captive Runtime,以便用户无需安装第二个应用程序,并且您知道应用程序运行的AIR Runtime版本。
      • Ad Hoc(iOS)
        • 此类构建用于测试版本质量的构建,可以分发到位于Apple Dev Portal中创建的Ad Hoc Mobile Provisioning Profile上的非开发设备
      • App Store(iOS)
        • 这是Apple将为App Store接受的唯一构建类型。任何其他构建类型将被自动拒绝。它不能安装在任何设备上,除非它来自App Store。必须使用Apple Dev Portal中创建的App Store移动配置文件。此与Ad Hoc之间没有性能差异(相同的构建,只是不同的签名)