http://pan.baidu.com/s/1hs2kHbm
AndFix热补丁原理就是在 native 动态替换方法 java 层的代码,通过 native 层hook java 层的代码。
优点
1. 因为是动态的,所以不需要重启应用就可以生效
2. 支持ART与Dalvik
3. 与multidex方案相比,性能会有所提升(Multi Dex需要修改所有cl...
分类:
移动开发 时间:
2016-07-13 16:16:12
阅读次数:
493
最近的自己状态有些糟糕....写一些东西来告诫自己,使自己进步一下,别再一个地方摔倒2次。 起因是自己维护的一个项目要使用JSPatch进行热修复,一开始自己以为很简单,所以很快对领导说好了,测试一点问题都没有。(呵呵,最近的自己还真是莫名的自信和SB似得迷茫呀) 然后到产品上真正需要进行热修复的时 ...
分类:
其他好文 时间:
2016-07-07 19:03:35
阅读次数:
159
项目快速迭代过程中,不可避免的出现BUG,Android线上出现问题,通常需要发版解决。紧急发版,用户不一定升级,强制升级又不友好,有什么更好的解决方案呢?这就用到了热修复技术。
QQ团队的hotfix,后来发展成为RocooFix,
GitHub地址: https://github.com/dodola/HotFix
原理详细介绍官方文章:安卓App热补丁动态修复技术介绍
阿里巴巴的AndFix...
分类:
移动开发 时间:
2016-06-29 14:47:11
阅读次数:
270
热修复和热更新 1 热更新和热修复:在线修复程序的 BUG 2 JSPach 的使用原理: OC 是一门动态运行时的语言,方法的运行和对象的创建是在运行时中创建的.JSPatch 正的用运行时,通过JavaScriptCore.framework作为 JS引擎,从 JS 动态调用方法和对象到OC 中 ...
分类:
其他好文 时间:
2016-06-21 06:29:55
阅读次数:
187
一、Android的ClassLoader体系由上图可以看出,在叶子节点上,我们能使用到的是DexClassLoader和PathClassLoader,他们有如下使用场景:
PathClassLoader是Android应用中的默认加载器,PathClassLoader只能加载/data/app中的apk,也就是已经安装到手机中的apk。这个也是PathClassLoader作为默认的类加载器的原...
分类:
其他好文 时间:
2016-06-16 14:50:46
阅读次数:
199
上一篇文章中我们介绍了android社区中很火的热修复功能,主流的热修复原理上其实分为两种,一种是通过利用dex的加载顺序实现热修复功能,一种是通过native层实现指针替换实现热修复功能,两种各有利弊可以根据自身产品的需要选择不同的方案。
而文本将要介绍一下android产品中另一项基础功能-数据统计。App数据统计的意义在于通过统计用户的行为方式有针对性的更新展示算法,根据用户的行为习惯更新...
分类:
移动开发 时间:
2016-06-12 02:57:53
阅读次数:
338
上一篇文章中我们讲解了App的数据统计,其主要分为两种:使用第三方服务统计和自身实现数据统计。一般而言我们使用第三方统计服务已经可以很好的满足我们的也无需求了,只是部分数据敏感性App,可能自身实现数据统计服务是一个更好的选择。
而本文中将要介绍的是App端的网络传输协议。那么这里首先需要明确一点的是什么是网络传输协议呢?好吧,这里首先套用一段百度百科的定义:
网络传输协议或简称为传送协...
分类:
移动开发 时间:
2016-06-05 23:29:24
阅读次数:
611
AndFix原理AndFix的原理就是方法的替换,把有bug的方法替换成补丁文件中的方法。 注:在Native层使用指针替换的方式替换bug方法,已达到修复bug的目的。使用AndFix修复热修复的整体流程:方法替换过程:源码解析解析源码从使用的方法一一解析。在自定义Application中初始化PatchManger:PatchManager mPatchManager = new PatchM...
分类:
移动开发 时间:
2016-06-02 00:57:30
阅读次数:
328
针对app线上修复技术,目前有好几种解决方案,开源界往往一个方案会有好几种实现。重复的实现会有造轮子之嫌,但分析解决方案在技术上的探索和衍变,这轮子还是值得去推动的关于Hot Fix技术Hot Fix技术,简单来说就是针对线上已发布app出现了bug,在不推送新版本的情况下通过发布修复补丁进行修复。通常是刚上线的app,需要快速线上修复bug,类似的技术就叫做热修复或热补丁。热修复技术能带来什么让...
分类:
移动开发 时间:
2016-06-01 13:08:56
阅读次数:
269
背景当app发布之后如果出现了紧急的线上bug,整个公司都会为此忙的焦头烂额,现公司如果线上出现严重的P1级bug,甚至大半夜整个项目组都得来紧急修复上线,而bug的原因可能仅仅是传错了参数,或者写错一行代码,而且修复后的app又得重新上架,直到用户更新后bug才会被修正。那热修复技术的出现就能很大程度上缓解这种情况,修复后不需要重新上架,用户也不需要重新下载安装。原理github上的热修复框架如n...
分类:
移动开发 时间:
2016-05-13 03:40:15
阅读次数:
158