赞
踩
coreLibraryDesugaring ‘com.android.tools:desugar_jdk_libs:1.0.4’
}
在早期版本的 Android Gradle 插件中,所有动态功能模块都只能依赖于应用程序的基本模块。
现在,当使用 Android Gradle 插件 4.0.0 及更高版本时,可以包括一个依赖于另一个功能模块的功能模块,即 :video
功能可以取决于:camera
功能,而功能取决于基础模块,结果如下图所示。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Xqy9ptki-1637896214314)(https://user-gold-cdn.xitu.io/2020/5/29/1725e21b8c0c1a07?imageView2/0/w/1280/h/960/ignore-error/1)]
动态功能
:video
取决于:camera
的功能,后者取决于基本:app
模块。
这意味着,当应用程序请求下载动态功能模块时,该应用程序还会下载其依赖的其他功能模块,在之后创建动态功能模块,你可以在模块声明一个功能上特征依赖 build.gradle
文件,例如 :video
模块声明对 :camera
以下项的依赖关系:
// In the build.gradle file of the ‘:video’ module.
dependencies {
// All dynamic feature modules must declare a dependency
// on the base module.
implementation project(’:app’)
// Declares that this module also depends on the ‘camera’
// dynamic feature module.
implementation project(’:camera’)
…
}
此外,你可以通过在菜单栏中单击 Help > Edit Custom VM Options 并启用以下功能,在 Android Studio 中启用 feature-on-feature dependency 功能(例如,在编辑 Run configuration 时支持该功能):
-Drundebug.feature.on.feature=true
使用 Android Gradle 插件 4.0.0 及更高版本构建应用时,该插件包含描述已编译到应用中的依赖项的元数据,uploading 应用程序时,Play 控制台会检查此元数据提供以下好处:
数据经过压缩,通过 Google Play 签名密钥加密,并存储在发布应用的签名栏中,你也可以自己在以下目录中的本地中间构建文件中检查元数据:<project>/<module>/build/outputs/sdk-dependencies/release/sdkDependency.txt。
如果不想共享此信息,可以通
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。