热修复-Rubus入门实践

比较几款当前流行的热修复框架

在这里插入图片描述
sophix ,微信tinker (收费)
Andfix,Amigo(停更了)
Rubust 可以具备修复方法的热修复,还需要再测试下,加固情况下,是否合成补丁正常稳定,会不会影响正常功能。

Rubust

看到到目前为止还在更新中,作为入门级热修复,可以尝鲜下

运行起项目demo

第一步打完签名的release包。 关键步骤签名,release版本,还得开启混淆。

注意点

在这里插入图片描述在这里插入图片描述2 放的是jar文件,不是dex文件
在这里插入图片描述

遇到不顺的地方

“robust” 另一个程序正在使用此文件,进程无法访问。

E:\bingleyLearning\AndroidProject\HotFixDemo\app\build\intermediates\compile_and_runtime_not_namespaced_r_class_jar\release\R.jar: 另一个程序正在使用此文件,进程无法访问。

强制杀掉文件也不行,只好重启as(垃圾,我也不知道为啥要这样)

如果不进行,就无法生成mapping 文件

minifyEnabled true
其次是自己定义的
它是有个这样的编译规则,就是你定义比如@mododify 的那个文件,比如有所引用,否则被扫描出来
说是在
something wrong with mappingfile ,cannot find class com.qyy.hotfix.sample.HelloActivity in mapping file
在这里插入图片描述
它的意思是说你在HelloActivity.java中有定义了@modify文件,但是这个文件没有所引用,导致在mapping文件查找没找到。所以就报错了。

必须保证第一步是正确的

最终结果

当然成功运行,并且修复了。
但是
我发现了一个不好的现象,重新进来,还是没有修复到原来的样子,看来每次都得重新加载patch

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值