实现热修复的原理这里就不再多说,当然理解原理也是很重要的,便于今后解决线上出现的问题更加轻松,这里作者只介绍接入Tinker中碰到的坑。接入的步骤这里给出Bugly Android热更新官方文档,只要按照以上文档来相信集成Tinker非常容易,而且我高度认为Bugly的文档非常棒,强于Tinker,这是我在之前使用时感悟。
为什么我要用Bugly的热更新,而不直接用Tinker呢?
最近这两天一直在研究腾讯的bugly热更新,bugly团队是基于微信的Tinker热更新方案进行的进一步封装,意在简化程序员的集成难度,于此同时还有应用升级,错误日志统计功能,比起直接接入Tinker更加方便,相信直接集成过微信Tinker的童鞋肯定深有体会!
完整接入流程(之前集成Tinker太心急,没有认真看文档,实际上关键性错误就犯在下面这几条)
- 打基准包安装并上报联网(注:填写唯一的tinkerId)
- 对基准包的bug修复(可以是Java代码变更,资源的变更)
- 修改基准包路径、修改补丁包tinkerId、mapping文件路径(如果开启了混淆需要配置)、resId文件路径
- 执行buildTinkerPatch