博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Xposed快速入门例子(一)----- 拉黑好友
阅读量:5942 次
发布时间:2019-06-19

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

、前言

废话不多说,就是要实现自动拉黑好友的功能。(微信版本是6.6.5)

二、寻找hook入口

利用DDMS轨迹录制,迅速找出突破口。具体的操作流程,请看,已经讲得很详细了。

录制开始与结束,一定要找到合适的时机。否则trace到的方法会很多。

比如:

我们要在这个界面点开始录制,点了确定之后,要马上结束录制。

然后我们得到了一些方法。再通过click事件过滤,一层一层地跟下去。

找到 com.tencent.mm.y.s类中的h方法就是拉黑的方法。

三、反编译微信apk,分析微信源码

这个是我们找到的h方法。参数是要传一个x对象。所以如果我们要用Xposed调个方法的话,得先构造一个x对象。

通过这个方法里的代码分析,里面只用到了这个x对象的field_username属性。

所以我们构造对象的时候只需要对这个对象加上这一个属性应该就可以了。这个属性就是要拉黑的人的wxid。

成不成功,得先试试看。

四、Xposed调找到的方法

话不多说,直接上代码。

/**     * 拉黑     * */ fun setBlack(username: String){        val clazz = XposedHelpers.findClass("com.tencent.mm.storage.x",         WechatPackage.loader)        //构造对象        val obj = XposedHelpers.newInstance(clazz, "")        //设置属性        XposedHelpers.callMethod(obj, "setUsername", username)         val clazz2 = XposedHelpers.findClass("com.tencent.mm.y.s",         WechatPackage.loader)        //调方法        XposedHelpers.callStaticMethod(clazz2, "h", obj)    }复制代码

五、测试

测试没有问题!拉黑的功能就这样简单地完成了!

具体的实现效果就不展示了,因为没有调这个方法的时机。

等下一篇写到关于跟踪聊天记录的消息,通过对方发的消息,再进行拉黑,这样时机有了,再把效果展示出来。

六、小结

核心技术就是DDMS的轨迹录制,实现的方法也是很简单。

后面的文章我会慢慢加大难度,能够帮助大家快速入门和进阶!

加QQ群:536941874 群里会实时分享技巧。包括一些简单实用的源码

如果有不懂的地方可以加我的微信。有什么建议和功能需要也可以向我提出来,我写博客分享给大家!

转载地址:http://gbhtx.baihongyu.com/

你可能感兴趣的文章
Java小细节
查看>>
poj - 1860 Currency Exchange
查看>>
chgrp命令
查看>>
Java集合框架GS Collections具体解释
查看>>
洛谷 P2486 BZOJ 2243 [SDOI2011]染色
查看>>
linux 笔记本的温度提示
查看>>
数值积分中的辛普森方法及其误差估计
查看>>
Web service (一) 原理和项目开发实战
查看>>
跑带宽度多少合适_跑步机选购跑带要多宽,你的身体早就告诉你了
查看>>
广平县北方计算机第一届PS设计大赛
查看>>
深入理解Java的接口和抽象类
查看>>
java与xml
查看>>
Javascript异步数据的同步处理方法
查看>>
iis6 zencart1.39 伪静态规则
查看>>
SQL Server代理(3/12):代理警报和操作员
查看>>
基于事件驱动的DDD领域驱动设计框架分享(附源代码)
查看>>
Linux备份ifcfg-eth0文件导致的网络故障问题
查看>>
2018年尾总结——稳中成长
查看>>
JFreeChart开发_用JFreeChart增强JSP报表的用户体验
查看>>
度量时间差
查看>>