Kev*_*van 7 groovy android command-line-arguments build.gradle android-gradle-plugin
每当导入现有的 android 项目时,在大多数情况下,我们需要更改已安装工具版本号后的值
在项目/build.gradle
buildscript {
...
dependencies {
classpath 'com.android.tools.build:gradle:x.x.x'
}
}
Run Code Online (Sandbox Code Playgroud)
在项目/应用程序/build.gradle
android {
compileSdkVersion xx
buildToolsVersion "xx.x.x"
defaultConfig {
applicationId "com.example.app.xyz"
minSdkVersion xx
targetSdkVersion xx
versionCode x
versionName "x.x"
}
...
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:x.xx'
compile 'com.android.support:appcompat-v7:xx.x.x'
compile 'com.android.support:recyclerview-v7:xx.x.x'
}
Run Code Online (Sandbox Code Playgroud)
如何覆盖上述值
classpath
compileSdkVersion
buildToolsVersion
targetSdkVersion
Run Code Online (Sandbox Code Playgroud)
使用命令行参数,例如
./gradlew installDebug -PCompileSdkVersion=26 -PbuildToolsVersion=26.0.0
Run Code Online (Sandbox Code Playgroud)
或类似的东西?
我的想法是使用一个相同的命令(以我安装的 sdk 版本号作为参数)来构建任何不由我维护的项目。
如果我们必须构建由其他人管理的多个项目,这会很有帮助。它可以通过我们的命令行参数覆盖他们的构建配置来节省大量时间,这样我们就不需要每次都在每个特定位置进行更改新导入的项目。
输入您的gradle.properties默认值:
SDK_VERSION=26
Run Code Online (Sandbox Code Playgroud)
用于build.gradle:
android {
compileSdkVersion project.getProperties().get("SDK_VERSION")
}
Run Code Online (Sandbox Code Playgroud)
用: ./gradlew build -PSDK_VERSION=26
PS:不要忘记,您还必须更改支持库的主要版本。
| 归档时间: |
|
| 查看次数: |
6391 次 |
| 最近记录: |