xposed也要热更新-改

本文同步自wing的地方酒馆

前言

去年很早的时候,就写过一篇关于xposed热更新的demo,其实这次的东西早就想写了,但是一直没(lan)时(de)间(xie),所以拖到现在才开始写。

这次我把Xposed热更新写成了一个库,只需要简单两步,即可完成对xposed不重启更改代码的操作。

库的链接如下:https://github.com/githubwing/HotXposed

先来说说怎么使用,使用的方式很简单。

用法:

1.在gradle添加库的依赖,各位老司机肯定轻车熟路了。

2.实现IHookerDispatcher,里面的逻辑就是你本身想写的hook逻辑。

3.在你的入口类里面调用HotXposed.hook()方法。

4.激活模块重启手机( = = ! 第一次肯定还是要重启的,不过以后就不用重启啦)

好了~ 本篇文章到此结束!!

才怪! (作者你原来这么短!!!!),no no no,作者不但不短,而且还很长,下面的内容就来说下原理。毕竟。。 我很长。

原理

之前的文章中,介绍了一种热更新的方式,那就是直接动态加载替换dex。这里延续之前的方法。

每次安装以后,去动态调用apk安装目录的apk里面的dex,然后反射调用即可。

所以,我们需要做的第一件事情就是查找插件apk的安装目录。

这里为了封装为库,绕了点弯子,那就是在库里定义一个接口,叫做IHookerDispatcher

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值