所以我想构建Android和iPhone应用程序.我对Adobe提供的不同选项感到有些困惑.据我所知,有一款产品即将推出,Adobe Flash Builder 4.5将允许使用Flex和Actionscript进行跨平台移动开发.现在我有了Adobe Flash CS5,当我创建一个新项目时,它让我可以选择制作iPhone.我可以使用Flash CS5构建iPhone/Android应用程序吗?如果是这样,怎么样?还有我需要什么?
您可以通过创建新的iPhone项目,在没有任何其他工具的情况下从CS5构建iPhone应用程序.但是,为了针对Android并获得iOS的最新性能改进,您应该使用Adobe AIR 2.6和ADT.ADT目前只能在命令行中使用,但它将集成到Flash CS5.5和Flash Builder 4.5中.
ADT接受AIR SWF文件作为输入,并且可以在应用程序描述符xml文件中指定AIR 2.6命名空间.这意味着可以通过创建一个air项目,在应用程序描述符xml中指定AIR 2.6命名空间,然后使用ADT打包应用程序,从Flash CS5中定位Android和iOS.这两个平台在应用程序描述符中所需的内容略有不同,所使用的命令行选项略有不同.此外,iOS平台需要有效的iOS开发人员证书.
有关iOS证书要求的ADT中使用的命令行选项的信息,请参见此处.
更新 - 这是为Android和iOS开发设置FlashDevelop工作流程的快速浏览.
首先下载FlashDevelop并允许它自动下载并安装最新的Flex SDK.默认路径为C:\ Program Files\FlashDevelop\Tools\flexsdk\bin.启动并运行FD后,下载并安装AIR 2.6 SDK,其中包含用于创建本机移动应用程序的ADT.要安装AIR 2.6 SDK,请将其解压缩到Flex SDK文件夹中,覆盖所有更改.
确保您可以使用FlashDevelop编译SWF .您可以使用一些不同的路径来构建SWF,如果您熟悉Flash使用Flash Professional进行编译,则可能是最容易上手的路径.确保将FLA设置为使用ActionScript 3和目标Flash Player 10(实际上应该设置为AIR 2.6,但Flash CS5 IDE不支持它).
或者,您可以仅使用Flash CS5进行资产管理,或者完全避免使用CS5,并将资产直接嵌入到AS3代码中.FlashDevelop论坛可能是查找此信息的最佳位置.
完成SWF编译后,您可以设置应用程序描述符xml(此处附加移动特定信息).您还需要开发人员证书才能创建Android应用程序,还需要开发人员证书和移动配置文件来创建iOS应用程序.一旦获得了所有必需的部分(SWF,App描述符文件,开发人员证书和配置文件),您就可以使用ADT将swf文件打包到本机应用程序中.ADT是AIR 2.6 SDK中的命令行工具(现在位于Flex SDK目录中).
我用来在android上测试的命令行结构是:
adt -package -target apk -storetype pkcs12 -keystore"path/DevelopersCertificate.p12"-storepass DevelopersCertificatePassword"path/AppName.apk""path/ApplicationDescriptor.xml""path/SourceSWF.swf"
我见过的一些来源指定.air文件作为输入.这不是必需的.瑞士法郎很好用.
对于iOS:
adt -package -target ipa-test -provisioning-profile"path/Your.mobileprovision"-storetype pkcs12 -keystore"path/DevelopersCert.p12"-storepass DevCertPassword"path/AppName.ipa""path/ApplicationDescriptor.xml""path /SourceSWF.swf"
您可以使用其他命令行选项来指定可在此处找到的应用程序图标和其他外部资产.
我建议您创建一个批处理文件,以便在排序命令行选项后为Android和iOS调用ADT.这使您可以通过一次单击构建两个平台.有一种方法可以从FlashDevelop调用ADT,但我发现批处理文件更容易创建和维护.
更新2 - 这个答案现在已经过时了.FlashDevelop现在可以为您完成大部分工作,包括下载最新的SDK和处理ADT选项.如果您对使用actionscript的移动开发感兴趣,我强烈建议您查看一下.