主要就是在moudle下的build.gradle文件中添加以下配置:
android {
compileSdkVersion 25
buildToolsVersion "25.0.1"
lintOptions {
abortOnError false
}
defaultConfig {
applicationId "包名"
minSdkVersion 16
targetSdkVersion 19
versionCode 4
versionName "1.0.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled true
debuggable false
zipAlignEnabled true//减少应用在运行时的内存消耗。
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
minifyEnabled false
debuggable true
}
}
flavorDimensions "isTv", "platform"
productFlavors {
normal {
dimension "isTv"
minSdkVersion 16
targetSdkVersion 19
versionNameSuffix "-normal"
resValue("string", "strKey", "Normal版本")
}
tv {
dimension "isTv"
minSdkVersion 21
targetSdkVersion 21
versionNameSuffix "-tv"
resValue("string", "strKey", "TV版本")
}
dangbei {
dimension "platform"
versionNameSuffix "-dangbei"
resValue("string", "strPlatform", "dangbei")
}
google {
dimension "platform"
versionNameSuffix "-google"
resValue("string", "strPlatform", "google")
}
}
}
这样就会按照debug/release、isTv、platform下的种类区分出2*2*2个不同的apk
代码中获取平台名称String platform = getApplicationContext().getString(R.string.strPlatform);