Flash Builder 4.5 与 Flash?
所以我想构建Android & iPhone 应用程序。我对 Adobe 提供的不同选项感到有些困惑。据我所知,有一款产品即将推出,即 Adobe Flash Builder 4.5,它将允许使用 Flex 和 Actionscript 进行跨平台移动开发。现在我有了 Adobe Flash CS5,当我创建一个新项目时,它让我可以选择制作 iPhone 的东西。我可以使用 Flash CS5 构建 iPhone/Android 应用程序吗?如果是这样,怎么办?不然我还需要什么?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以通过创建新的 iPhone 项目从 CS5 构建 iPhone 应用程序,无需任何其他工具。但是,为了针对 Android 并获得 iOS 的最新性能改进,您应该使用 Adobe AIR 2.6 和 ADT。 ADT 目前只能从命令行使用,但它将集成到 Flash CS5.5 和 Flash Builder 4.5 中。
ADT 接受 AIR SWF 文件作为输入,并且可以在 应用程序描述符 xml 文件。这意味着可以通过创建 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上测试的命令行结构是:
我见过的一些来源指定了.air 文件作为输入。这是没有必要的。 swf 工作正常。
对于 iOS:
您可以使用其他命令行选项来指定应用程序图标和其他外部资源,这些选项可以在 此处。
我建议您在对命令行选项进行排序后创建一个批处理文件来调用适用于 Android 和 iOS 的 ADT。这使您可以一键构建两个平台。有一种方法可以从FlashDevelop调用ADT,但我发现批处理文件更容易创建和维护。
更新2 - 这个答案现在已经过时了。 FlashDevelop 现在可以为您完成大部分繁重的工作,包括下载最新的 SDK 和处理 ADT 选项。如果您对使用 Actionscript 进行移动开发感兴趣,我强烈建议您查看一下。
You can build iPhone apps from CS5 without any other tools by creating a new iPhone project. However, in order to target android and get the latest performance improvements for iOS, you should be using Adobe AIR 2.6 and the ADT. The ADT can only be used from the command line currently, though it will be integrated into Flash CS5.5 and Flash Builder 4.5.
The ADT accepts an AIR SWF file as input and the AIR 2.6 namespace can be specified in the app descriptor xml file. This means it is possible to target Android and iOS from Flash CS5 by creating an air project, specifying the AIR 2.6 namespace in the app descriptor xml, and then using the ADT to package the apps. The two platforms vary a little in what is required in the app descriptor and the command line options used are slightly different. Additionally the iOS platform requires an active iOS developers certificate.
Information on the command line options used in the ADT on the iOS certificate requirements can be found here.
UPDATE -
Here's a quick run through of setting up a FlashDevelop workflow for Android and iOS development.
First download FlashDevelop and allow it to automatically download and install the latest Flex SDK. The default path is C:\Program Files\FlashDevelop\Tools\flexsdk\bin. Once you have FD up and running, download and install the AIR 2.6 SDK which includes the ADT used to create native mobile applications. To install the AIR 2.6 SDK you extract it into the Flex SDK folder, overwriting any changes.
Make sure you can compile SWFs using FlashDevelop. There are a few different paths you can go down to build your SWF, probably the easiest to get started if you're familiar with Flash is using Flash Professional to compile. Make sure you set up your FLA to use ActionScript 3 and target Flash Player 10 (this should actually be set to AIR 2.6 but the Flash CS5 IDE doesn't support it).
Alternatively you can use Flash CS5 for asset management only or avoid CS5 altogether and embed assets directly into your AS3 code. The FlashDevelop forums are probably the best place to find this info.
Once you have SWFs compiling, you can set up your application descriptor xml (additional mobile specific info here). You will also require a developers certificate to create Android apps, and a developers certificate and mobile provisioning file to create iOS apps. Once you've got all the necessary pieces (SWF, App descriptor file, developers certificates and provisioning file) you can use the ADT to package your swf file into a native app. The ADT is a command line tool found in the AIR 2.6 SDK (now in your Flex SDK directory).
The command line structure I use to test on android is:
Some sources I've seen specify an .air file as the input. This isn't necessary. A swf works fine.
And for iOS:
There are additional command line options you can use to specify app icons and other external assets that can be found here.
I recommend creating a batch file to call the ADT for both Android and iOS once you've got the command line options sorted. This lets you build for two platforms with one click. There is a way to call the ADT from FlashDevelop, but I found that the batch file is easier to create and maintain.
UPDATE 2 - This answer is quite outdated now. FlashDevelop now does most of the grunt work for you including downloading the latest SDK and handling the ADT options. I strongly suggest you check it out if you're interested in mobile development using actionscript.
如果需要,您可以使用记事本和命令行来完成此操作。它们只是不同的 IDE,并且是个人喜好问题。
就我个人而言,我讨厌在 flash CS5 中编写代码。它根本不是为了用作应用程序开发工具而设计的。不过它确实能制作出漂亮的动画。 :)
编辑
您可能需要等待 CS5.5 才能获得任何内置 GUI 支持。但是,没有什么可以阻止您构建 AIR 应用程序并在编译结果上运行打包程序。
You can do it with notepad and the command line if you wanted. They are just different IDEs, and a matter of personal preference.
Personally, I detest writing code in flash CS5. It was not at all designed to be used as an application development tool. It sure does make pretty animations though. :)
edit
You may need to wait for CS5.5 for any built in GUI support. However, there is nothing stopping you from building an AIR app and running the packager on the compiled result.
我认为Android或Iphone设备中基于Flash的应用程序会消耗更多电量。
这就是为什么所有开发人员都尝试使用 HTML 5 构建一个应用程序,该应用程序在视角能力和营养方面更舒适且更少海岸。
另外,你必须知道 Flex 项目现在不适合 Adobe!
Adobe 正在放弃 Flex SDK 并将其交给 Apache,也许是为了消亡,或者是为了加强这个项目。待关注...
I think that an application based on Flash in Android or Iphone device, consumes more power.
That's why all the developers try to build an application with HTML 5 which more comfortable and less coast in point of view power and alimentation.
Also, you have to know that Flex project is not for Adobe now !
Adobe is abandoning Flex SDK and putting it out to Apache, perhaps to die, or to enforce this project. To be followed ...