美团 Android 热更新方案 Robust 开源,包含自动化补丁工具

美团 Android 热更新方案 Robust 开源了。

Robust 是新一代热更新系统,对 Android 版本无差别兼容,无需发版就可以做到随时修改线上 bug,快速对重大线上问题作出反应。Robust 热更新系统借鉴 Instant Run 原理,实现了一个兼容性更强而且实时生效的热更新方案。其基本思路是,Robust 热更新系统在一个方法的入口处插入一段跳转代码,当发现某个方法出现 bug 就跳转执行补丁中的代码,略过原有代码的执行,否则执行原有方法体逻辑。

优势

支持 Android2.3-7.X 版本

高兼容性、高稳定性,修复成功率高达三个九

补丁下发立即生效,不需要重新启动

支持方法级别的修复,包括静态方法

支持增加方法和类

支持 ProGuard 的混淆、内联、优化等操作

需要保存打包时生成的 mapping 文件以及 build/outputs/robust/methodsMap.robust 文件。

自动化补丁

自动化补丁是 Robust 实现的一个跃进,开源版本中也已经包含这部分工作。使用者只需要提交修改完 bug 后的代码,运行和线上 apk 打包同样的 gradle 命令即可,会在项目的 app/build/outputs/robust 目录下生成补丁。

具体实现原理和样例请查阅项目文档。

本文来自开源中国社区 [http://www.oschina.net]

上一篇:如何使用工具验签


下一篇:Oracle-存储过程(procedure、function、package、tigger)