Grade 全局參數定義
實際開發中設置公共的編譯依賴參數等。
方法一:
在項目外層的build.gradle文件中定義,格式如下:
文件名:build.gradle
ext {
sourceCompatibility = JavaVersion.VERSION_1_7
targetCompatibility = JavaVersion.VERSION_1_7
compileSdkVersion = 25
buildToolsVersion = '25.0.3'
minSdkVersion = 19
targetSdkVersion = 26
supportVersion = '25.3.1'
supportV7CardView = "com.android.support:cardview-v7:${supportVersion}"
supportV4 = "com.android.support:support-v4:${supportVersion}"
supportFragment = "com.android.support:support-fragment:${supportVersion}"
...
}
在各個module的build.grade文件中獲取以上定義變量方法為:
rootProject.ext.supportDesign
rootProject.ext.supportFragment
rootProject.ext.supportAnnotations
rootProject.ext.supportV7AppCompat
rootProject.ext.supportV7RecyclerView
rootProject.ext.supportV7CardView
方法二:
在gradle.properties中定義整個工程的全局gradle變量
在gradle.properties中定義如下變量
ANDROID_BUILD_MIN_SDK_VERSION=15
ANDROID_BUILD_TARGET_SDK_VERSION=23
ANDROID_BUILD_SDK_VERSION=23
ANDROID_BUILD_TOOLS_VERSION=23.0.2
在所有build.gradle中可以這樣使用:
compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION)
buildToolsVersion project.ANDROID_BUILD_TOOLS_VERSION
方法三:
可以在根目錄下建個config.gradle:
config.gradle文件內容如下:
ext {
android = [
compileSdkVersion: 23,
buildToolsVersion: "23.0.2",
minSdkVersion : 14,
targetSdkVersion : 22,
]
dependencies = [
appcompatV7': 'com.android.support:appcompat-v7:23.2.1',
design : 'com.android.support:design:23.2.1'
]
}
然后只需在根目錄下build.gradle最頂部加上下面一行代碼,然后同步下,意思就是所有的子項目或者所有的modules都可以從這個配置文件里讀取內容。
apply from: "config.gradle"
在app/build.gradle中使用調用如下:
android {
compileSdkVersion rootProject.ext.android.compileSdkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
defaultConfig {
applicationId "com.example.android"
minSdkVersion rootProject.ext.android.minSdkVersion
targetSdkVersion rootProject.ext.android.targetSdkVersion
versionCode 1
versionName "1.0"
}
...
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile rootProject.ext.dependencies.appcompatV7
compile rootProject.ext.dependencies.design
}
作者:花花是男神
鏈接:https://www.jianshu.com/p/43d3e19e3e87
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權並注明出處。
