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

  1. 在src文件夾下面創建channelOne和channelTwo文件夾並創建package

src/channelOne/java/com/jack/appdemo/...

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

2. 創建兩個一樣的文件,例如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"
	}
}

3. 在main裏面使用

class MainActivity... {
	fun onCreate(...) {
		val server = Config.SERVER
	}
}

4. 配置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"
		}
		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 = "DiffApk_${variant.productFlavors[0].name}_v${variant.versionName}_${releaseTime()}.apk"
			}
	}
}
def releaseTime() {
    return new Date().format("yyyy-MM-dd", TimeZone.getTimeZone("UTC"))
}

5. 打包apk,會生成兩個不同名字的apk

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

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

6. 調試不同渠道 打開Android Studio左側的Build Variants,在你要調試的應用裏選擇你要調試的渠道版本,如下圖

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章