美团 Android 热更新方案 Robust 开源了。 Robust 是新一代热更新系统,对 Android
版本无差别兼容,无需发版就可以做到随时修改线上 bug,快速对重大线上问题作出反应。Robust 热更新系统借鉴 Instant Run
原理,实现了一个兼容性更强而且实时生效的热更新方案。其基本思路是,Robust 热更新系统在一个方法的入口处插入一段跳转代码,当发现某个方法出现
bug 就跳转执行补丁中的代码,略过原有代码的执行,否则执行原有方法体逻辑。 优势
需要保存打包时生成的 mapping 文件以及 build/outputs/robust/methodsMap.robust 文件。 自动化补丁自动化补丁是 Robust 实现的一个跃进,开源版本中也已经包含这部分工作。使用者只需要提交修改完 bug 后的代码,运行和线上 apk 打包同样的 gradle 命令即可,会在项目的 app/build/outputs/robust 目录下生成补丁。 |