Android build.gradleでbuildConfigFieldを使用してパラメータを動的に設定し、defは変数を宣言します.
3002 ワード
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply from: 'dependency.gradle'
android {
compileSdkVersion 28
def ALI_APP_KEY_RELEASE = "\"xx\"" // \", int
def ALI_APP_KEY_TEST = "\"xxxx\""
defaultConfig {
applicationId "com.xx.xxxx"
minSdkVersion 18
targetSdkVersion 28
versionCode 13
versionName "1.1.3"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
multiDexEnabled true
ndk {
abiFilters "armeabi" // v7a
}
//Glide 9.0
vectorDrawables.useSupportLibrary = true
compileOptions {
targetCompatibility JavaVersion.VERSION_1_8
sourceCompatibility JavaVersion.VERSION_1_8
}
}
// APK
applicationVariants.all { variant ->
variant.outputs.all { output ->// each all
def fileName = "APP-${variant.versionName}-${variant.buildType.name}-Release.apk"
def outFile = output.outputFile
if (outFile != null && outFile.name.endsWith('.apk')) {
outputFileName = fileName // output.outputFile outputFileName
}
}
}
signingConfigs {
release {
storeFile file("D:\\") //
storePassword ""
keyAlias ""
keyPassword "" //
v1SigningEnabled true
v2SigningEnabled true
}
debug {
storeFile file("D:\\") //
storePassword ""
keyAlias ""
keyPassword "" //
v1SigningEnabled true
v2SigningEnabled true
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
// signingConfigs
signingConfig signingConfigs.release
//$ALI_APP_KEY_RELEASE
buildConfigField "String", "ALI_APP_KEY", "$ALI_APP_KEY_RELEASE"
}
debug {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
/*
* signingConfigs ( , Android ,
* Debug , , debug , debug ,APP )
*/
signingConfig signingConfigs.debug
//$ALI_APP_KEY_RELEASE
buildConfigField "String", "ALI_APP_KEY", "$ALI_APP_KEY_TEST"
}
}
}
注意:buildConfigFieldはbuildTypeで構成されています.