基于Walle的多渠道快速打包自动脚本

1.配置渠道相关信息
在App 目录下新建一个channel(txt)文件

Qh360 #360
Yyb #应用宝
Wdj #豌豆荚
Lenovo #联想
Xiaomi #小米
Huawei #华为
Meizhu #魅族

2.在位于项目的根目录 build.gradle 文件中添加Walle Gradle插件的依赖, 如下:

buildscript {
    dependencies {
        classpath 'com.meituan.android.walle:plugin:1.1.4'
    }
}

3.并在当前App的 build.gradle文件中apply这个插件,并添加上用于读取渠道号的AAR

apply plugin: 'walle' 
dependencies { 
compile 'com.meituan.android.walle:library:1.1.4'
} 
walle { 
// 指定渠道包的输出路径 
apkOutputFolder = new File("${project.buildDir}/outputs/channels"); 
// 定制渠道包的APK的文件名称 
apkFileNameFormat = '${appName}-${packageName}-${channel}-${buildType}-v${versionName}-${versionCode}-${buildTime}.apk'; 
// 渠道配置文件 
channelFile = new File("${project.getProjectDir()}/channel") 
}

4.如何获取渠道信息

在需要渠道等信息时可以通过下面代码进行获取

String channel = WalleChannelReader.getChannel(this.getApplicationContext());

5.如何生成渠道包

生成单个渠道包: 
gradlew clean assembleReleaseChannels -PchannelList=meituan 
生成多个渠道包: 
gradlew clean assembleReleaseChannels -PchannelList=meituan,dianping 
生成所有渠道信息 
gradlew clean assembleReleaseChannels

猜你喜欢

转载自blog.csdn.net/qq_32138419/article/details/89710510
今日推荐