Bugly的热更新使用记录
背景
最近研究热Android方面的热更新,写了一个小demo已经测试成功了,趁热打铁记录一下
很久以前研究过使用tinker,无奈能力有限,一直配置不清楚,遂放弃,后来看到了Bugly的热更新也在使用tinker,而且已经有控制台,版本控制下发等功能,无需自己再写后台 , bugly将集成tinker的很多麻烦的配置写成了tinker-support的脚本,使用起来也很方便
工具 AndroidStudio
步骤
第一步,创建一个普通项目
第二步,配置gradle
project下的build.gradle
// tinkersupport插件, 其中lastest.release指拉取最新版本,也可以指定明确版本号,例如1.0.4
classpath "com.tencent.bugly:tinker-support:1.1.5"
主Model下的build.gradle
implementation "com.android.support:multidex:1.0.1" // 多dex配置
//注释掉原有bugly的仓库
//compile 'com.tencent.bugly:crashreport:latest.release'//其中latest.release指代最新版本号,也可以指定明确的版本号,例如1.3.4
implementation 'com.tencent.bugly:crashreport_upgrade:1.3.6'
// 指定tinker依赖版本(注:应用升级1.3.5版本起,不再内置tinker)
implementation 'com.tencent.tinker:tinker-android-lib:1.9.9'
implementation 'com.tencent.bugly:nativecrashreport:latest.release' //其中latest.release指代最新版本号,也可以指定明确的版本号,例如2.2.0
因为tinker还需要配置很多东西,即使bugly帮我们封装了,配置项依然很多,所以在主Model的目录下创建 tinker-support.gradle 文件,然后在主Model中使用它
创建该文件,以下代码粘进去,bugly帮我们封装好的代码
apply plugin: 'com.tencent.bugly.tinker-support'
def bakPath = file("${buildDir}/bakApk/")
/**
* 此处填写每次构建生成的基准包目录
*/
def baseApkDir = "app-0119-11-2