5大Android hotfix 线上热修复框架比较

原创 2016年01月28日 16:02:39

hot fix

1.阿里巴巴-淘宝

https://github.com/alibaba/dexposed#

Dexposed不支持Art模式(5.0+),且写补丁有点困难,需要反射写混淆后的代码,粒度太细,要替换的方法多的话,工作量会比较大。

*2.阿里巴巴-支付宝

https://github.com/alibaba/AndFix#

AndFix支持2.3-6.0,但是不清楚是否有一些机型的坑在里面,毕竟jni层不像java曾一样标准,从实现来说,方法类似Dexposed,都是通过jni来替换方法,但是实现上更简洁直接,应用patch不需要重启。但由于从实现上直接跳过了类初始化,设置为初始化完毕,所以像是静态函数、静态成员、构造函数都会出现问题,复杂点的类Class.forname很可能直接就会挂掉。

局限性:
不支持YunOS
无法添加新类和新的字段,不支持布局资源的修改
需要使用加固前的apk制作补丁,但是补丁文件很容易被反编译,也就是修改过的类源码容易泄露。
使用了apk加固时(360加固,百度加固等等),发现在加固前要先apkpatch制作补丁,不能使用加固后的apk制作,否则补丁无法使用,但是在加固前制作的补丁可以很容易的被反编译出源码

与Nuwa相比,AndFix有一下优点:
不需要重启APP即可应用补丁。
安全性更好,Nuwa后面的版本应该也会加上安全方面的内容。
但是也有缺点:
无法添加类和字段

demo例子:AndFix实现动态热修复Demo

===============================================================

3.阿里巴巴(原腾讯QQ空间 )

https://github.com/bunnyblue/DroidFix#

支持2.3-6.0,会对启动速度略微有影响,只能在下一次应用启动时生效,在空间中已经有了较长时间的线上应用,如果可以接受在下次启动才应用补丁,是很好的选择。

4.百度

https://github.com/dodola/HotFix#

该项目是基于QQ空间终端开发团队的技术文章实现的,完成了文章中提到的基本功能。

文章地址:安卓App热补丁动态修复技术介绍

项目部分代码从 dalvik_patch 项目中修改而来,这个项目本来是用来实现multidex的,发现可以用来实现方法替换的效果。

项目包括核心类库,补丁制作库,例子。可以直接运行代码看效果。

文章作者Github: jiqimaogou

类似项目: Nuwa 这个项目补丁自动化那块做的很完整,感兴趣的可以去看

5.大众点评

https://github.com/jasonross/Nuwa#

与HotFix相比实现了中间制作补丁等操作自动化

需要重启APP

=====================================

参考:http://blog.csdn.net/lmj623565791/article/details/49883661

参考:各大热补丁方案分析和比较

参考:http://www.jianshu.com/p/479b8c7ec3e3

版权声明:本文为【LouisGeek】原创文章,转载请注明出处!

相关文章推荐

Android客户端插件化热修复各种方案对比和最全总结

原文链接:Android客户端插件化热修复各种方案对比和最全总结 2016年不能扯几句热修复和插件化都不好意思说自己是做 Android 的,虽然我对这个技术不怎么感兴趣,奈何业务需...
  • xhmj12
  • xhmj12
  • 2016年11月14日 10:55
  • 2810

Android 热补丁动态修复框架小结

转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/49883661; 本文出自:【张鸿洋的博客】 一、概述最新githu...

浅谈Android热修复

前言: 很多时候测试完的产品上线后,突然发现一个小的bug。这时候考虑到用户体验、和时间成本,不能为了一点点bug而重新发布新版本。于是就有了热修复这个概念的产生!它可以在不发布版本的情况下修复出bu...

Android热修复:Andfix和Hotfix,两种方案的比较与实现

android的热修复技术我看的最早的应该是QQ空间团队的解决方案,后来真正需要了,才仔细调查,现在的方案中,阿里有两种Dexposed和Andfix框架,由于前一种不支持5.0以上android系统...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

Android热修复:Andfix和Hotfix,两种方案的比较与实现

Andfix和hotfix是两种android热修复框架。android的热修复技术我看的最早的应该是QQ空间团队的解决方案,后来真正需要了,才仔细调查,现在的方案中,阿里有两种Dexposed和An...

【热修复现有方案的比较】

2015年以来,Android开发领域里对热修复技术的讨论和分享越来越多,同时也出现了一些不同的解决方案,如QQ空间补丁方案、阿里AndFix以 及微信Tinker,它们在原理各有不同,适用场景各异,...

Android 热修复方案--阿里百川HotFix

概述我们都知道一旦我们的应用被发布到各大平台上面之后修复bug是一件很麻烦的事情,如果要重新发布审核周期之长,用户肯定不接受,虽然也可以在应用中自检更新,但是一个小小的bug动辄就更新应用实在是大材小...

蘑菇街Android客户端HotFix探索之路

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和...

向每一个错误致敬——Android HotFix

Android HotFix —— AndFix使用说明项目以飞快的速度迭代,2周进行一次迭代升级。每次开发完功能跑通,在现有机型上测试没问题的话,就提交市场。在以极快的速度迭代的时候,避免不了出现各...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:5大Android hotfix 线上热修复框架比较
举报原因:
原因补充:

(最多只允许输入30个字)