android - 使用 Flex 创建 iPhone/Android 应用程序的缺点

标签 android ios apache-flex

所以我知道 adobe(或其他人)现在提供了一种将 Flex 应用程序移植到 iPhone 的方法。当您想要创建一个可以移植到 3 个顶级移动操作系统的多平台应用程序时,这似乎是一个很好的解决方案。不过我只是想知道。有什么缺点?我确信在 flex 中执行它的性能不如在 obj-c 或 java 中执行它。但情况能变得多糟呢?在 Flex 中这样做还有其他缺点吗? (与 obj-c for iphone/java for android 和 bb)

最佳答案

What are the downside?

以下是一些注意事项:

性能是考虑因素之一。 Flash/AIR 似乎不太可能像优化的 native 应用程序那样运行。不过,最后一部分并不是移动设备所独有的。您的级别越低,获得的性能就越好。 C 比 ActionScript 运行得更好。汇编代码将比 C 运行得更好。机器代码将比汇编运行得更好。

无法访问 native API 是另一回事。应用内计费和联系人是我看到的两个常见请求。 AIR 3 引入了 Native Extensions 作为解决这个问题的方法。但是,要创建 native 扩展,您必须编写 native 代码并以特殊方式对其进行编译,以将其公开给 AIR 运行时。随着时间的推移,一群人可能会创造出您可以使用的 native 扩展,这样您就不必自己做肮脏的工作。

对外部运行时的依赖是某些人的另一个限制因素。如果用户使用旧版本的 AIR 并且在安装您的应用程序时遇到问题该怎么办?在 AIR 3 中,Adobe 引入了一种称为 Captive Runtime 的东西来解决这个问题。它将运行时 bundle 为应用程序的一部分。它使应用程序的大小增加了约 8MB,但消除了外部依赖性。 Captive Runtime 是部署到 iOS 的唯一方法。

这些是我看到的主要限制。我认为使用 Flex/Flash 进行构建会带来很多好处,但最大的好处是能够轻松部署到多个平台。如果您已经了解 Flash/AS3;用它构建移动应用程序似乎是一个合乎逻辑的选择。

关于android - 使用 Flex 创建 iPhone/Android 应用程序的缺点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7758205/

相关文章:

ios - viewWillAppear 未按预期调用

javascript - 柔性 : Children components disapear when SkinnableContainer is skinned

apache-flex - AS3 : Whats determines the order of: for. .in

android - "Monkey Runner"对测试人员直接在Android应用程序中准备测试用例有用吗?

android - Picasso : want to cache a image without displaying it . 以便我以后可以使用它

objective-c - App 在 iPad 1 上崩溃,但在 iPad 2 或第 3 代上不会

iphone - 向 UITextField 添加不可编辑的文本后缀

apache-flex - 弹性 : Does the flex compiler automatically optimize embedded PNG assets?

android - 如何禁用有时随 WebView 中的缩放控件一起出现的 tip toast 消息?

Android:RIL 移植 - 使用我的 GPRS+GSM (pppd+chat) 的网络设置问题