使用Android AIR与使用Android本机应用程序相比,有什么优缺点呢?
使用Adobe AIR时,您不能将Android UI控件与AIR视图混合使用。您的唯一选择是启动Android本地活动或在AIR视图顶部放置Android本地视图容器。但AIR必须始终位于底部。
有许多原生Android API已经在Adobe AIR中实现了,但还有许多没有实现。要使用不受AIR支持的Android API,您必须编写本机扩展,并且如果您希望在桌面调试中使用它,则还必须为桌面编写扩展。如果您熟悉本机代码,则编写扩展很容易,但编译它们可能会非常困难,因为没有易于使用的工具。
很难说性能更好的地方在哪里。如果您正在使用本机Air VS任何本机Android应用程序,那么可能本机Android会更快。然而,如果您使用Stage-3D(在Starling API中实现得很好),那么Air将比不使用OpenGL ES的任何本机Android应用程序更快,在OpenGL的情况下,我认为性能基本相同。一个例外将是Android NDK,但这不完全是本地的,并且我不确定您是否可以在Adobe AIR中实现它。
在进行跨平台工作时,Adobe AIR可以节省大量时间,您的代码可能在所有平台上都不相同,但肯定会有许多共享库。本机Android应用程序在这种情况下不会给您任何东西。
*受2010年关于此主题的旧文章启发。