111111是什么意思和含义,111111代表什么含义

首页 > 情感 > 作者:YD1662022-12-28 13:58:05

111111是什么意思和含义,111111代表什么含义(1)

热修复说白了就是”打补丁”,比如你们公司上线一个app,用户反应有重大bug,需要紧急修复。如果按照通常做法,那就是程序猿加班搞定bug,然后测试,重新打包并发布。这样带来的问题就是成本高,效率低。于是,热修复就应运而生.一般通过事先设定的接口从网上下载无Bug的代码来替换有Bug的代码。这样就省事多了,用户体验也好。

111111是什么意思和含义,111111代表什么含义(2)


热修复原理也是动态加载class文件,然后调用反射完成修复,拿阿里开源的热修复框架AndFix来说,首先是添加依赖了

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

然后就初始化了

patchManager = new PatchManager(context);

patchManager.loadPatch();

添加修复文件的方法:

patchManager.addPatch(path);

上面只是第一步,添加一下依赖,了解了一下相关方法

第二步就是生成差异apk,生成一个有Bug的和没有bug的apk。

第三步就是生成修复文件。要用到一个生成补丁的工具apkpatch

111111是什么意思和含义,111111代表什么含义(3)

_MACOSX是给OSX系统用的

.bat是给window系统用的

把之前生成的Bug.apk和NoBug.apk,还有打包所使用的keystore文件放到apkpatch-1.0.3目录下

打开cmd,进入到apkpatch-1.0.3目录下,输入如下指令

apkpatch.bat -f NoBug.apk -t Bug.apk -o Dennis -k keystore -p 111111 -a 111111 -e 111111

每个参数含义如下

-f 新版本的apk

-t 旧版本的apk

-o 输出apatch文件的文件夹,可以随意命名

-k 打包的keystore文件名

-p keystore的密码

-a keystore 用户别名

-e keystore 用户别名的密码

如果出现add modified …….就表示成功了,去apkpatch-1.0.3目录看下,新增了Dennis目录

111111是什么意思和含义,111111代表什么含义(4)

上图就是生成的修复文件了。

把这个文件拷贝到SD卡里,用

patchManager.addPatch(path);

加载他的路径即可。

然后你的bug就会修复了。

怎么样,简单吧。但是这其中的原理是ClassLoader机制,大家可以自行渗入研究。

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.