手把手教你接入Bugly热更新SDK

什么是热更新
热更新能力是Bugly为解决开发者紧急修复线上bug,而无需重新发版让用户无感知就能把问题修复的一项能力。Bugly目前采用微信Tinker的开源方案,开发者只需要集成我们提供的SDK就可以实现自动下载补丁包、合成、并应用补丁的功能,我们也提供了热更新管理后台让开发者对每个版本补丁进行管理。

为什么使用Bugly热更新?

  • 无需关注Tinker是如何合成补丁的
  • 无需自己搭建补丁管理后台
  • 无需考虑后台下发补丁策略的任何事情
  • 无需考虑补丁下载合成的时机,处理后台下发的策略
  • 我们提供了更加方便集成Tinker的方式
  • 我们通过HTTPS及签名校验等机制保障补丁下发的安全性
  • 丰富的下发维度控制,有效控制补丁影响范围.
  • 我们提供了应用升级一站式解决方案

接下来,进入正题,记录一下自己接入Bugly热更新的几个步骤,以免忘记了就回来翻翻文章!

1.添加gradle依赖

project的build.gradle文件

buildscript {
    
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.2.1'
        // tinkersupport插件, 其中lastest.release指拉取最新版本,也可以指定明确版本号,例如1.0.4
        classpath "com.tencent.bugly:tinker-support:1.1.5"
    }
}

app module的gradle文件

// 依赖插件脚本
apply from: 'tinker-support.gradle'

....

    // 多dex配置
    implementation "com.android.support:multidex:1.0.3"
    // 远程依赖集成方式(推荐)
    implementation "com.tencent.bugly:crashreport_upgrade:1.3.6"
    // 指定tinker依赖版本(注:应用升级1.3.5版本起,不再内置tinker)
    implementation 'com.tencent.tinker:tinker-android-lib:1.9.9'

2.在app module下新建tinker-support.gradle文件

直接从官网的配置copy一份即可

这里需要注意几个重要的配置参数

  • baseApkDir-此处理解为每次构建生成后的目录,在对一个基准包(有bug)进行打补丁包的时候,需要改这个位置的路径
  • tinkerId-格式要求:xxx-version name.version code ps.base-1.0.1(1.0是versionName 1是versionCode),一定要注意对得上,否则在构建的时候会出现tinkerId not found的异常
  • enableProxyApplication-这里采用反射Applcation的方式,也就是true 的情况,其他情况见Bugly文档
apply plugin: 'com.tencent.bugly.tinker-support'

def bakPath = file("${buildDir}/bakApk/")

/**
 * 此处填写每次构建生成的基准包目录
 */
def baseApkDir = "app-0208-15-10-00"

/**
 * 对于插件各参数的详细解析请参考
 */
tinkerSupport {

    // 开启tinker-support插件,默认值true
    enable = true

    // 指定归档目录,默认值当前module的子目录tinker
    autoBackupApkDir = "${bakPath}"

    // 是否启用覆盖tinkerPatch配置功能,默认值false
    // 开启后tinkerPatch配置不生效,即无需添加tinkerPatch
    overrideTinkerPatchConfiguration = true

    // 编译补丁包时,必需指定基线版本的apk,默认值为空
   
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值