所以我知道 adobe(或其他人)现在提供了一种将您的 flex 应用程序移植到 iphone 的方法。当您想要创建一个可以移植到 3 个顶级移动操作系统的多平台应用程序时,这似乎是一个很好的解决方案。我只是想知道。有什么缺点?我确信在 flex 中执行它不如在 obj-c 或 java 中执行它。但它会变得多糟糕?在 Flex 中这样做还有其他缺点吗? (与 obj-c 用于 iphone/java 用于 android 和 bb)
What are the downside?
以下是一些注意事项:
性能是考虑因素之一。 Flash/AIR 似乎不太可能像优化的 native 应用程序一样运行。不过,最后一部分并不是移动设备独有的。你去的级别越低,你可以获得更好的性能。 C 将比 ActionScript 运行得更好。汇编代码将比 C 运行得更好。机器代码将比汇编运行得更好。
无法访问 native API 是另一种情况。应用内计费和联系人是我看到的两个常见请求。 AIR 3 引入了 Native Extensions 来解决这个问题。但是,要创建 native 扩展,您必须编写 native 代码并以特殊方式对其进行编译,以将其公开给 AIR 运行时。随着时间的推移,一群人可能会创造出您可以使用的原生扩展,这样您就不必自己做这些脏活。
对某些外部运行时的依赖是另一个限制因素。如果用户使用的是旧版本的 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/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |