在src文件夹下面创建channelOne和channelTwo文件夹并创建package src/channelOne/com/jack/appdemo/...
src/channelTwo/com/jack/appdemo/...
创建两个一样的文件,例如Config.kt
//channelOne
class Config {
companion object {
const val SERVER = "192.168.1.1"
}
}
//channelTwo
class Config {
companion object {
const val SERVER = "192.168.1.2"
}
}
在main里面使用
class MainActivity... {
fun onCreate(...) {
val server = Config.SERVER
}
}
配置app的build.gradle
android {
defaultConfig {
applicationId "com.jack.appdemo"
...
dimension "default"
}
...
flavorDimensions "default" //名字随便取,一定要有
productFlavors {
channelOne {
applicationId "com.jack.appdemo.channelone"
minSdkVersion 17
targetSdkVersion 29
versionCode 1
versionName "1.0"
dimension "default"
android.applicationVariants.all {
variant ->
variant.outputs.all {
//在这里修改apk文件名
outputFileName = "AppDemo-ChannelOne-v${variant.versionName}.apk"
}
}
}
channelOne {
applicationId "com.jack.appdemo.channelone"
minSdkVersion 17
targetSdkVersion 29
versionCode 1
versionName "1.0"
dimension "default"
android.applicationVariants.all {
variant ->
variant.outputs.all {
//在这里修改apk文件名
outputFileName = "AppDemo-ChannelOne-v${variant.versionName}.apk"
}
}
}
}
打包apk,会生成两个不同名字的apk
AppDemo/app/channelOne/release/AppDemo-ChannelOne-v1.0.apk
AppDemo/app/channelTwo/release/AppDemo-ChannelTwo-v1.0.apk