Android配置多渠道和打包apk重命名

不问归期 提交于 2021-01-08 16:44:42
  1. 在src文件夹下面创建channelOne和channelTwo文件夹并创建package src/channelOne/com/jack/appdemo/...

src/channelTwo/com/jack/appdemo/...

  1. 创建两个一样的文件,例如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"
	}
}
  1. 在main里面使用
class MainActivity... {
	fun onCreate(...) {
		val server = Config.SERVER
	}
}
  1. 配置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"
					}
				}
			}
}
  1. 打包apk,会生成两个不同名字的apk

AppDemo/app/channelOne/release/AppDemo-ChannelOne-v1.0.apk

AppDemo/app/channelTwo/release/AppDemo-ChannelTwo-v1.0.apk

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!