【问题标题】:Android dynamic delivery in Library project图书馆项目中的Android动态交付
【发布时间】:2021-03-16 18:26:12
【问题描述】:

我正在构建一个 Android 库,我希望它的一些功能仅作为动态功能模块按需下载。

是否可以在 Android 库项目中使用动态交付(来自 Google Play 核心库)?

我尝试将dynamicFeatures = [':my_dynamic_feature'] 添加到我的库项目的build.gradle,但是当我尝试进行 Gradle 同步时,我收到以下错误:

Could not set unknown property 'dynamicFeatures' for object of type com.android.build.gradle.LibraryExtension.

出于这个原因,我怀疑只有'com.android.application' 支持动态交付,但'com.android.library' 不支持。

有人可以确认这是否受支持吗?
或者至少计划在未来发布 Play Core 库?

谢谢!

【问题讨论】:

    标签: android gradle android-library google-play-core dynamic-delivery


    【解决方案1】:

    是的,目前只能从应用程序类中使用。

    如果您想以一种以后可以支持动态功能的方式设计您的库,您可以将与动态功能相关的代码移动到一个单独的库中,我们称之为 DFLibrary。 您可以使用反射,而不是直接调用 DFLibrary 方法。

    现在,任何想要使用您的库和 DFLibrary 但不想处理动态功能安装的客户端都可以包含您的库和 DFLibrary 的依赖项。

    如果客户端想要将 DFLibrary 用作动态功能模块,它可以自己创建一个动态功能模块并将 DFLibrary 依赖项包含在其中,然后处理该动态功能模块的下载。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-11
      • 2016-02-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多