美文网首页
关于阿里的热修复---android andfix

关于阿里的热修复---android andfix

作者: 若无初见 | 来源:发表于2017-04-20 17:39 被阅读127次

    andfix 说起来网上的例子真的很多很多:

    AndFix 是阿里巴巴开源的 Android 应用热修复工具,帮助 Anroid 开发者修复应用的线上问题。Andfix 是 "Android hot-fix" 的缩写。

    AndFix 支持 Android 2.3 - 6.0,ARM 和 x86 架构,dalvik 运行时和 art 运行时。AndFix 的分支是 .apatch 文件。

    AndFix 方法体取代实现规则:

      

    Bug 修复过程:

      

    适用环境说明

    Andfix并不能修复所有情况下出现的bug,测试结果如下:

    还有部分小米华为手机存在无法修复的问题

    做法

    1.使用gradle添加依赖

    compile'com.alipay.euler:andfix:0.3.1@aar'

    2.在application中初始化

    patchManager =newPatchManager(getApplicationContext());       

    patchManager.init(version);//current versionpatchManager.loadPatch();

    3加载

    patchManager.addPatch(path);//pathofthe patchfilethat was downloaded

    实际上就这么简单的几句话就可以实现加载,主要的操作还是生成补丁文件,然后提交给后台经过对比版本然后文件下载,最后加载:

    1.生成补丁

    使用工具apkpatch-1.0.3

    下载地址:https://github.com/alibaba/AndFix/raw/master/tools/apkpatch-1.0.3.zip

    使用命令apkpatch生成补丁。

    图示参数缺一不可,否则无法生成补丁!!!

    例如:

    旧的apk为1.apk,新的apk为2.apk, -o表示补丁的输出目录,-k表示keystore, -p表示keystore的密码,-a表示alias, -e表示entry password。

    可以看到在当前目录下生成了相应的补丁文件:

    补丁命名规则如下:

    a_b.apatch

    a表示versionCode,b表示当前的补丁的版本。

    例如:如果当前的versionCode的版本为4,补丁的版本为3,则命名为4_3.apatch。

    2 判断下载条件并下载

    判断下载的条件 xutils文件下载(当然可以通过其他的方式下载) 下载后添加apatch文件

    相关文章

      网友评论

          本文标题:关于阿里的热修复---android andfix

          本文链接:https://www.haomeiwen.com/subject/osblzttx.html