Skip to content

热更新SDK接入说明

rocky edited this page Mar 31, 2019 · 4 revisions

很多同学反馈,bugly 热更新SDK接入太麻烦。非常感谢大家的建议,降低SDK接入成本既方便了用户也为bugly小组减负解答工作,后面我们会朝着这个方向不断优化SDK接口、DEMO以及文档。

如果你觉得接入热更新SDK很麻烦,文档太多,参数太多,看完头大。请看下面总结,接入热更新重点做好下面几步,其他的细节可以在使用中慢慢探索:

1.阅读一遍官网文档,这里对bugly 热更新 sdk做了详细描述

2.相信看完官网文档后有些同学会比较晕,没关系,运行https://github.com/BuglyDevTeam/Bugly-Android-Demo/tree/master/BuglyHotfixDemo/demo-test-apk/ 这里的demo apk,体验一遍热更新的效果,里面附录有使用说明

3.参考https://github.com/BuglyDevTeam/Bugly-Android-Demo/tree/master/BuglyHotfixDemo,第一次接入不建议改动太多,尽量完全按照demo配置做,等基础功能跑通之后再了解每一个参数细节

4.有了demo作为配置基础,下面只要做几步:

<1>使用assembleRelease构建base apk,构建完了要安装这个apk并联网激活,否则补丁无法上传到后台,因为补丁合法的前提是有对应的base版本存在

<2>修改tinker-support.gradle,def baseApkDir = "base apk所在目录",这是为了第三步构建patch做准备

<3>随便修改一行代码,使用buildTinkerPatchRelease构建生成patch,好了到此为止你可以将patch上传到后台

<4>打开base apk后很多同学疑惑为什么收不到更新包,如果你也是这样,不放参考demo加个按钮主动查询后台是否有更新包存在,同时查看logcat日志TAG为"crashreport"。bugly获取更新包策略需要客户端主动请求而非后台推送,因此用户可以根据app使用场景来决定什么时机在什么页面调用Beta.checkUpgrade()来请求更新策略。

  1. 最后建议,tinker和bugly sdk建议参考官方demo使用的版本

至此,如果上面步骤都做好了理论上base apk启动后可以接收到Patch,然后下载,合并,最后提示apk重启。重启后的apk即是合并了patch后的新的apk。