bugly搭配walle 热更新渠道和补丁详细集成汇总一篇就够了

这块踩了好多坑,贴出来,做个记录,方便自己也方便他人,遇到问题可以提出来,我会尽量帮大家解答

一. 集成bugly和walle

  1. bugly集成方法     (官方的很详细了,这里就不啰嗦了)
  2. walle集成方式说一下,避免这里出错
  1. 在项目的根目录 build.gradle的dependencies{ }添加 classpath 'com.meituan.android.walle:plugin:1.1.6'
  2. 在app下的build.gradle中的顶部添加 apply plugin: 'walle'
walle {
       apkOutputFolder = new File("${project.buildDir}/outputs/channels")
       apkFileNameFormat = '${appName}-${packageName}-${channel}-${buildType}-v${versionName}-${versionCode}-${buildTime}-${flavorName}.apk'
       //configFile与channelFile两者必须存在一个,否则无法生成渠道包。两者都存在时优先执行configFile
       channelFile = new File("${project.getProjectDir()}/channel")
      //configFile = new File("${project.getProjectDir()}/config.json")
}

(ps : walle{ }这个代码块上下位置都可以,我放在了最底部 ,还是不清可以下载demo查看)

  1. 拷贝channel文件到 主app/的目录下

二. 打渠道包和补丁包

集成好以后的操作步奏

一: 打渠道包,因为需要走编译流程,也会随之生成相应的基础包

  1. 使用命令行 gradlew clean assembleReleaseChannels , 此时会在app/build/barapk 目录下生成基准包(整个文件一定要备份保存):如 app-0328-16-55-35文件夹;
  2. 此时再查看 app/build/outputs/channels目录下生成所有渠道包. 如图1 

二: 打补丁包.一个补丁适配所有渠道

  1. 把之前备份的R,mapping,apk的app-0328-16-55-35文件夹文件复制到build/barapk目录下,也就是在此基准包基础上的补丁
  2. 修改tinker-support.gradlew文件,def baseApkDir = "" 赋值为 def baseApkDir = "app-0328-16-55-35"
  3. 构建基准包跟补丁包都要修改tinkerId,主要用于区分 基准包tinkerId必须小于补丁包的Id号 tinkerId = "1.0.6-longwu" //其中tinkerId命名一般是跟随versionname或者git提交编号; 如图2:
  4. 点击android studio右侧 Gradle 选择tasks/tinker-support下的buildTinkerPatchRelease,会在 app/build/outputs/patch下 选择patch_signed_7zip.apk这个是最终补丁包, 然后上传腾讯bugly后台即可,如图3 
github源码

github 源码地址: https://github.com/xiaolongwuhpu/TestBugly


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值