寻找一些只做一次的聪明方法,例如
allprojects {
android {
buildToolsVersion '18.0.1'
compileSdkVersion 18
defaultConfig {
targetSdkVersion 18
}
}
}
否则,每次有新的 SDK 更新可用时,我都需要在每个子项目中(例如,在 volley 或 viewpagerindicator 等引用库中)更新这个东西。
通常,根项目不包含代码,因此您将使用subprojects
. 此外,您必须在android {}
阻止之前应用 Android 插件。除此之外,我希望这能奏效。
我在另一个问题中回答:
我在这里找到了解决方案。
将它复制到这里以防万一:
在你的根 build.gradle 添加
ext {
compileSdkVersion = 20
buildToolsVersion = "20.0.0"
}
subprojects { subproject ->
afterEvaluate{
if((subproject.plugins.hasPlugin('android') || subproject.plugins.hasPlugin('android-library'))) {
android {
compileSdkVersion rootProject.ext.compileSdkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
}
}
}
}
这会将 compileSdkVersion 和 buildToolsVersion 应用于您拥有的任何 android 模块。
在您的主项目的 build.gradle 中,将依赖项更改为:
compileSdkVersion rootProject.ext.compileSdkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
基本上你定义它们一次,可以在任何地方使用。
干杯。