Guy*_*Guy 16 android gradle android-build android-gradle-plugin
运行assembleDebug时,会调用我依赖的项目的发布相关任务.
例如,我有一个名为'x'的项目,它取决于'y'.
当我gradle assembleDebug调用y:mergeReleaseProguardFiles,packageReleaseAidl等...等等.
编辑: Android Gradle Plugin 3.x 不再适用。
图书馆还发布debug和release工件。如果项目有风格或自定义类型,也会创建它们。跨模块,它会尝试自动匹配变体。如果不匹配,您需要提供matchingFallback跨模块的匹配变体。更多信息可以在这里找到:https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration.html#resolve_matching_errors
Android 库模块仅发布“release”构建类型。他们没有“调试”构建类型。即使您的应用程序模块构建了调试版本,它也会使用库的发布版本。
您可以在模块文件中使用以下内容启用库依赖项的“调试”构建类型build.gradle:
android {
  publishNonDefault true
  ...
}
然后,当您在其他模块中使用该依赖项时,应该像这样使用:
dependencies {
  releaseCompile project(path: ':moduleY', configuration: 'release')
  debugCompile project(path: ':moduleY', configuration: 'debug')
}
我在我的应用程序中使用了同样的技巧。我有一个共享模块,并且使用该模块的调试版本。在这里查找详细信息:
https://github.com/pomopomo/WearPomodoro/blob/develop/mobile/build.gradle#L90
| 归档时间: | 
 | 
| 查看次数: | 2100 次 | 
| 最近记录: |