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

spi*_*ce7 12 android android-instant-apps

Android最近推出了一个新的com.android.feature插件,用于将应用程序分解为新的Instant应用程序的功能.它似乎是他们一般推荐的架构,而不仅仅是您为即时应用程序分割的功能.你可以在这里阅读它的用法.

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

Ada*_*amK 22

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

关键的区别在于库插件将始终输出一个Android Archive(com.android.library)文件,其中功能插件能够AAR在构建针对常规Android应用程序(通过插件AAR)时输出文件,并在构建目标com.android.application时为该模块输出文件即时应用(通过插件APK).

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

  • @IgorGanapolsky - 它并没有完全不同,但却有所不同.实际上插件是非常密切相关的(`com.android.dynamic-feature`是基于`com.android.feature`的学习),而实际的项目结构最终会非常相似.鉴于此,希望将来这两个插件将集成到一个支持两者的插件中. (2认同)