Android 美团Walle 批量打包 最简单集成方式以及采坑方式

Gradle插件使用方式
配置build.gradle

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

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

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

apply plugin: 'walle'

dependencies {
    compile 'com.meituan.android.walle:library:1.1.6'
}

注意确保有签名

    signingConfigs {
        config {
            keyAlias 'abc'
            keyPassword '123456'
            storeFile file('E:/keystore/aaa.keystore')
            storePassword '123456'
        }
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
            signingConfig signingConfigs.config
        }
    }

并在当前App的 build.gradle 配置插件 与 dependencies 平级

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")
}

配置项具体解释: 请看官方文档

搭配渠道

在app工程下新建文件channel,放置渠道信息(根据实际需要修改):

xiaomi
360
huawei
等等根据自己需要设置
如何获取渠道信息

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

String channel = WalleChannelReader.getChannel(this.getApplicationContext());
如何生成渠道包

生成渠道包的方式是和assemble${variantName}Channels指令结合,渠道包的生成目录默认存放在 build/outputs/apk/,也可以通过walle闭包中的apkOutputFolder参数来指定输出目录

用法示例:
window下
在androidStudio Terminal 中(这里注意有时候会因为环境变量原因提示执行失败,尝试切换到cmd中执行试试)

gradlew clean assembleReleaseChannels

mac

./gradlew clean assembleReleaseChannels

到这里基本就没问题了。、

注意:
这中方式用不到友盟那些以前的打包方式
比如以下这些

<meta-data
            android:name="UMENG_CHANNEL"
            android:value="z1" />
尤其注意 value 不能设置为动态 {$xxx} 这种形式不可接受。不然as3.3左右直接报错。看gradle报错信息很蛋疼的。如果提示mainfest报错 大家可以看下 mainfest.xml中Merged Mainfest 我就是在这里坑了
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有时有晌

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值