Flash Builder 4.5 vs Flash?

10

我想开发Android和iPhone应用程序,但对Adobe提供的不同选项有些困惑。我了解到即将推出Adobe Flash Builder 4.5产品,可以使用Flex和Actionscript进行跨平台移动开发。现在我拥有Adobe Flash CS5,当我创建一个新项目时,它给我提供了制作iPhone应用程序的选项。我能否使用Flash CS5构建iPhone/Android应用程序?如果可以,怎么做?否则,我需要什么?

3个回答

9
您可以通过创建新的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、应用程序描述符文件、开发人员证书和配置文件),就可以使用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文件,但这并不是必需的。swf也可以正常工作。
对于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"
您可以使用其他命令行选项来指定应用程序图标和其他外部资源,可以在此处找到。
建议创建一个批处理文件来调用ADT来同时构建Android和iOS。这样可以通过一次点击构建两个平台。虽然有一种方法可以从FlashDevelop中调用ADT,但我发现批处理文件更易于创建和维护。

更新2 - 这个答案现在已经过时了。FlashDevelop现在为您完成大部分繁重的工作,包括下载最新的SDK和处理ADT选项。如果您对使用actionscript进行移动开发感兴趣,我强烈建议您去看看它。


如果您不介意的话,我可以在这里寻求一些获取正确工具的帮助。我是一名狂热的iPhone和Android开发者(本地),但Adobe网站上有大量信息让我感到不确定。那么,假设我下载了FlashDevelop。我还需要下载什么?Adobe Air?Flex?然后我该如何开始呢?我非常渴望学习Flex / Actionscript并制作跨平台应用程序,但我需要一个“手把手”的教程来入门。有太多信息分散在太多方面。 - spentak
嗨@spentak。我同意,文档非常糟糕。我已经更新了我的原始答案,并介绍了我用来设置开发工作流程的方法。希望这会让你开始。如果有什么不清楚的地方,请告诉我。 - Ethan Worley
伊桑,非常棒的答案!这让我朝着正确的方向前进。非常感谢! - spentak

2
如果您想的话,可以使用记事本和命令行进行操作。它们只是不同的IDE,这只是个人偏好的问题。
就我个人而言,我不喜欢在Flash CS5中编写代码。它根本就不是为应用程序开发工具而设计的。但它确实可以制作出漂亮的动画效果。 :)
编辑
您可能需要等待CS5.5才能获得任何内置GUI支持。但是,没有什么阻止您构建一个AIR应用程序并在编译后运行打包器。

1
Flash IDE完全不适合进行任何规模的编程。点赞给你。虽然我仍然使用IDE来嵌入和编译,以及制作一些精美的动画,但是当涉及编写和编辑代码时,我是FlashDevelop的忠实粉丝。 - Bosworth99

0

我认为基于Flash的应用在Android或iPhone设备上会消耗更多的电力。这就是为什么所有开发人员都试图使用HTML 5构建应用程序,因为从能源和供电的角度来看,它更加舒适和节省成本。

此外,您必须知道Flex项目现在不再属于Adobe!

Adobe正在放弃Flex SDK并将其移交给Apache,也许是为了让这个项目死亡,或者是为了加强它。敬请关注...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接