Walle(瓦力)多渠道打包

2019-08-28  本文已影响0人  未聞椛洺

Walle(瓦力)多渠道打包

项目地址
https://github.com/Meituan-Dianping/walle
Gradle插件方式
配置build.gradle
在位于项目的根目录build.gradle文件中添加Walle Gradle插件的依赖, 如下:
buildscript {
dependencies {
classpath'com.meituan.android.walle:plugin:1.0.3'
}}
并在当前App的build.gradle文件中apply这个插件,并添加上用于读取渠道号的AAR
applyplugin:'walle'
dependencies {
compile'com.meituan.android.walle:library:1.0.3'
}
配置插件
walle {
//指定渠道包的输出路径
apkOutputFolder=newFile("{project.buildDir}/outputs/channels"); //定制渠道包的APK的文件名称 apkFileNameFormat='{appName}-{packageName}-{channel}-{buildType}-v{versionName}-{versionCode}-{buildTime}.apk';
//渠道配置文件
channelFile=newFile("{project.getProjectDir()}/channel"); } 配置项具体解释: apkOutputFolder:指定渠道包的输出路径, 默认值为new File("{project.buildDir}/outputs/apk")
apkFileNameFormat:定制渠道包的APK的文件名称, 默认值为'{appName}-{buildType}-{channel}.apk' 可使用以下变量: projectName - 项目名字 appName - App模块名字 packageName - applicationId (App包名packageName) buildType - buildType (release/debug等) channel - channel名称 (对应渠道打包中的渠道名字) versionName - versionName (显示用的版本号) versionCode - versionCode (内部版本号) buildTime - buildTime (编译构建日期时间) fileSHA1 - fileSHA1 (最终APK文件的SHA1哈希值) flavorName - 编译构建 productFlavors 名 channelFile:包含渠道配置信息的文件路径。 如何获取渠道信息 在需要渠道等信息时可以通过下面代码进行获取 Stringchannel=WalleChannelReader.getChannel(this.getApplicationContext()); 如何生成渠道包 生成渠道包的方式是和assemble{variantName}Channels指令结合,渠道包的生成目录默认存放在build/outputs/apk/,也可以通过walle闭包中的apkOutputFolder参数来指定输出目录
用法示例:
生成渠道包./gradlew clean assembleReleaseChannels
支持 productFlavors./gradlew clean assembleMeituanReleaseChannels
插入额外信息
channelFile只支持渠道写入,如果想插入除渠道以外的其他信息,请在walle配置中使用configFile
walle {
// 渠道&额外信息配置文件,与channelFile互斥
configFile = new File("${

上一篇下一篇

猜你喜欢

热点阅读