为什么在库插件上使用新的Android功能插件?

时间:2017-06-05 03:37:44

标签: android android-instant-apps

Android最近发布了一个新的com.android.feature插件,用于将应用程序拆分为新的Instant应用程序的功能。它似乎是他们一般推荐的架构,而不仅仅是您为即时应用程序分割的功能。您可以阅读它的使用情况here

我无法理解的是这个插件实际上比普通的android-library插件做得更好/不同。我问,因为我的团队合法地考虑将我们的代码拆分成功能模块,原因与Android即时应用程序无关,而且我不明白使用com.android.feature插件的好处是什么

1 个答案:

答案 0 :(得分:19)

更新(截至2019年5月):对于在此帖子上磕磕绊绊的任何人,下面的详细信息现在已经过时了。功能插件(com.android.feature)不再是“新”,实际上现在已被弃用,支持即时启用的应用程序包。请阅读官方blog post中的详情。

新功能插件(com.android.feature)实际上与现有库插件(com.android.library)的行为方式和使用方式几乎完全相同。

关键区别在于库插件将始终输出Android Archive(AAR)文件,当构建针对常规Android应用程序时,功能插件可以输出AAR文件(通过当构建针对即时应用程序(通过插件com.android.application)时,该模块的插件APK)和com.android.instantapp文件。

现在有什么好处?目前,您只需要使用功能插件来构建Google Play Instant(以前称为Android Instant Apps)。如果您不打算为Google Play Instant构建,那么现在使用功能插件的好处很少。一个小的好处可能是您可以为应用的每个模块输出APKs,并可以独立安装和测试它们。