Android Studio:Grade 全局參數(shù)定義

Grade 全局參數(shù)定義

實(shí)際開發(fā)中設(shè)置公共的編譯依賴參數(shù)等。

方法一:

在項(xiàng)目外層的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文件內(nèi)容如下:

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最頂部加上下面一行代碼,然后同步下,意思就是所有的子項(xiàng)目或者所有的modules都可以從這個配置文件里讀取內(nèi)容。

apply from: "config.gradle"

在app/build.gradle中使用調(diào)用如下:

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

}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容