使用安卓AIR而不是安卓原生应用程序的优点和缺点是什么?
原生UI控件
使用Adobe AIR时,您不能将Android UI控件与AIR视图混合使用。您唯一的选择是启动android原生活动或将android原生视图容器放在AIR视图的顶部。但AIR必须始终处于底部。
安卓API访问
有许多原生的Android API已经在AdobeAIR中实现,但有多少还没有实现。要使用AIR中不支持的Android API,您必须编写本机扩展,如果您希望在桌面调试中使用它,您也必须为桌面编写扩展。如果您熟悉本机代码,编写扩展很容易,那么编译它们可能是一场噩梦,因为没有简单的工具。
性能
很难说哪里的表现更好。如果你使用的是原生空气VS任何原生安卓应用程序都可能比原生安卓更快。如果你使用Stage-3D(在Starling API中实现得很好),Air将比任何不使用OpenGL ES的原生Android应用程序更快,在使用OpenGL的情况下,我认为性能基本相同。一个例外将是Android NDK,无论如何,这不是完全本地的,我不确定你是否可以或不能在Adobe AIR中实现它。
跨平台
在跨平台工作时,AdobeAIR可以为您节省大量时间,您的代码可能在所有平台上都不一样,但它会有很多共享库。在这种情况下,原生Android应用程序不会给你任何东西。
*灵感来自2010年关于这个话题的一篇旧文章。