繁体   English   中英

Android 库模块与功能模块

[英]Android Library Module vs Feature Module

Android Studio 3.0 的最新更新允许创建多种模块类型。 其中一种新类型是“功能模块”,但我找不到有关它的详细信息

现有的 Android 库模块和功能模块有什么区别,为什么我应该使用后者?

我能看到的唯一区别是 Feature 模块在清单中定义了一个应用程序。 这些功能可以/应该作为独立的应用程序使用吗? 在这种情况下,它们与实际的应用程序模块有何不同?

功能模块用于免安装应用和 Android App Bundle 中,因此当应用在使用免安装应用或 App Bundle 时请求功能时,Play 商店仅加载请求的功能模块代码,而不加载其他代码。 对于免安装应用,一旦用户使用完该功能,代码就会被丢弃。 如果您正在开发常规应用程序而不是即时应用程序,我认为您应该使用 Android 库模块。

Android App Bundles 将用于将您的应用程序分成小块,以便用户在不需要时无需下载 APK 中的所有代码。

也许是一个小小的更新版本......

例如, Android 库是您的应用程序中需要但也可能在其他应用程序中使用的功能。 这基本上是您的应用程序的一个固定部分。

动态功能模块(或即时应用程序的即时动态功能模块)可用于临时或基于功能的应用程序。 假设您有一个需要 80MB 库扫描模块的入职流程。 因此,当用户进入 onboarding 时,将请求并安装该模块。 一旦用户完成您的入职流程,就不再需要扫描模块,因此您可以再次从您的应用中删除该模块。

另一个示例:您创建了一个具有订阅功能的应用程序。 由于用户为您的订阅付费。用户现在可以访问 8 个模块(功能)中的 3 个,并且该功能/模块正在用户设备上安装。

因此,总而言之,使用动态功能来减小您的应用程序大小可能是明智的,甚至是必要的(达到最大 APK 大小)。

另见:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM