博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
热更新
阅读量:6094 次
发布时间:2019-06-20

本文共 1190 字,大约阅读时间需要 3 分钟。

###

官方网站:https://github.com/alibaba/AndFix

AndFix 目前只能针对代码中的业务逻辑,不能对成员变量、布局文件和资源文件进行热修复。

1、 在AS中导入 dependencies { compile 'com.alipay.euler:andfix:0.5.0@aar' } 2、在application中的onCreate中初始化

patchManager = new PatchManager(context); patchManager.init(appversion);//current version

Load patch, patchManager.loadPatch();

//可在后端推送中或者请求中添加 补丁文件(out. apatch) Add patch, patchManager.addPatch(path);//path of the patch file that was downloaded When a new patch file has been downloaded, it will become effective immediately by addPatch. //复制且加载补丁成功后,可删除下载的补丁 3、 混淆(若是release进行如下混淆) -dontwarn android.annotation -dontwarn com.alipay.euler.** -keep class com.alipay.euler.** {*;} -keep class * extends java.lang.annotation.Annotation -keepclasseswithmembernames class * { native ; } 4、 在官网上下载apkpatch(用来生成out. apatch)

解压出来在所在apkpatch的文件夹 然后可以把你要比对的两个apk 和你的密钥库文件都放到里面来 方便 命令的输入

命令:apkpatch.bat -f new.apk -t old.apk -o output -k key.jks -p 123456 -a AndroidFix -e 123456 -f :新版本 -t : 旧版本 -o:输出目录 -k:打包所用的keystore -p: keystore的密码 -a: keystore 用户别名 -e: keystore 用户别名密码

在你打包的时候 两个apk包必须都是用同样的打包方式 debug 或者release 如果两个不相同的话,会报错 ,因为两次生成的buildConfig是不同的。

转载于:https://juejin.im/post/5b3ac83de51d45556a1bc13c

你可能感兴趣的文章
自己制作交叉编译工具链
查看>>
Qt Style Sheet实践(四):行文本编辑框QLineEdit及自动补全
查看>>
[物理学与PDEs]第3章习题1 只有一个非零分量的磁场
查看>>
深入浅出NodeJS——数据通信,NET模块运行机制
查看>>
onInterceptTouchEvent和onTouchEvent调用时序
查看>>
android防止内存溢出浅析
查看>>
4.3.3版本之引擎bug
查看>>
SQL Server表分区详解
查看>>
使用FMDB最新v2.3版本教程
查看>>
SSIS从理论到实战,再到应用(3)----SSIS包的变量,约束,常用容器
查看>>
STM32启动过程--启动文件--分析
查看>>
垂死挣扎还是涅槃重生 -- Delphi XE5 公布会归来感想
查看>>
淘宝的几个架构图
查看>>
Android扩展 - 拍照篇(Camera)
查看>>
JAVA数组的定义及用法
查看>>
充分利用HTML标签元素 – 简单的xtyle前端框架
查看>>
设计模式(十一):FACADE外观模式 -- 结构型模式
查看>>
iOS xcodebuile 自动编译打包ipa
查看>>
程序员眼中的 SQL Server-执行计划教会我如何创建索引?
查看>>
【BZOJ】1624: [Usaco2008 Open] Clear And Present Danger 寻宝之路(floyd)
查看>>