Android 热修复专题:支付宝、淘宝、微信、QQ空间、饿了么、美丽说蘑菇街、美团大众点评方案集合

Android 热修复专题:支付宝、淘宝、微信、QQ空间、饿了么、美丽说蘑菇街、美团大众点评方案集合

当一个 App 发布之后,突然发现了一个严重 bug 需要进行紧急修复,这时候公司各方就会忙得焦头烂额:重新打包 App、测试、向各个应用市场和渠道换包、提示用户升级、用户下载、覆盖安装。有时候仅仅是为了修改了一行代码,也要付出巨大的成本进行换包和重新发布。这时候就提出一个问题:有没有办法以补丁的方式动态修复紧急Bug,不再需要重新发布App,不再需要用户重新下载,覆盖安装?答案当然是有的,那就是最近涌现出来得热补丁方案。

截止目前国内包含支付宝、淘宝、微信、QQ空间、饿了么、美丽说蘑菇街、美团大众点评等团队都推出了自己的热修复方案。(以下图片来自美丽说蘑菇街热修复文章分析)

1、 Dexposed、AndFix、ClassLoader等各大热补丁方案分析和比较

主要分析了 Dexposed、AndFix、ClassLoader 这三种方案的原理原理和各自的优缺点,感觉现在文章可以加入 Instant Run 和微信的 Tinker 热补丁方案了

2、Android App 热补丁动态修复技术介绍及 QQ 空间热补丁动态修复技术方案原理

Android QQ空间团队提出了独特的解决方法,该方案基于的是android dex分包方案的。具体大家直接点击原文查看

3、微信 Android 热补丁实践演进之路

文章介绍了热补丁主要是让应用能够在无需重新安装的情况实现更新,帮助应用快速建立动态修复能力,同时对比了 Dexposed、AndFix、QQ 空间的 ClassLoader 等等的业务局限然后根据微信自身的需求推出了微信自己的热补丁方案 Tinker。

4、Alibaba 热修复方案系列文章(包含 AndFix、Dexposed 框架)

Alibaba 出品的热修复方案,主要涉及到AndFix、Dexposed框架的使用和原理分析。

5、Instant Run英文原文(需要科学上网)

6、Instant Run工作原理及用法

第5、第6篇,简单明了的带你看懂Instant Run的运作方式。

7、基于Nuwa实现 Android 自动化 HotFix

8、Android 热修复 Nuwa 的原理及 Gradle 插件源码解析

第7、8篇文章,基于开源框架 Nuwa 来实现的热修复方案。

9、Aceso:美丽说蘑菇街开源的 Android 热修复方案 ( GitHub 地址 )

10、蘑菇街 Android 热修复探索之路 ( 技术解读 )

基于 Instant Run Hot Swap 的 Android 热修复方案,使用它你能在不用重新发布版本的情况下对线上 app 的 bug 进行修复。

11、Robust:美团第二代热修复框架(GitHub 地址)

12、美团 Android 热更新方案 Robust ( 技术解读 )


新一代热更新系统Robust,对Android版本无差别兼容。无需发版就可以做到随时修改线上bug,快速对重大线上问题作出反应,补丁修补成功率高达99.9%。

13、Amigo:饿了么热修复开源(GitHub 地址)

14、饿了么热修复开源解决方案 Amigo 0.4.4 源码解读

Amigo是业界比较成熟的Hotfix解决方案,同时它适用的业务场景也并不会局限于此。如果你的团队是采用并行开发的话,发版周期会将是一个非常头疼问题,有了Amigo,这些都将不再是困扰业务的快速发展。


Android 热修复技术经过这几年发展已经非常成熟了,以上那么多轮子总有一个适合你。

编辑于 2017-03-21

文章被以下专栏收录