企业微信 Hook 学习笔记【2】

最重要事情

【免责声明】:

此系列文章主要关于xposed的相关学习,以下所提及到的所有方式皆为学习,如有他人使用本系列学习文章中所提及的知识点用于其他非法用途,本人不承担由此造成的任何后果!!

代码分离并分享

就如我上一篇文章xposed 企业微信weworkhook学习之初分享

所提到的,在整个过程中参考了他人的源码,并且在其基础之上做了修复bug及新增功能,但为了后续能够有人能够使用其共同学习,故今日将代码分离,并提交仓库,仓库地址:XMagicHooker

  • 经过测试,下载的代码你可以即刻运行,并且如果你的手机安装了xposed框架,那么现在只需要将其勾选并重启手机运行即可
  • 如果你的手机未安装xposed框架,建议你使用VirtualXposed,将此插件安装到VirtualXposed(相信你已经熟悉如何使用VirtualXposed了)并重启VX即可

此仓库中包含的kernel代码

  • async: 异步处理
  • cache: 磁盘缓存、内存缓存
  • core: 此包中的代码主要来源于WechatSpellbook,但其内部已经做过一些改版,可以更方便的处理一些hook方法,你可以查看HookerCenter中的具体变动
  • helper:一些帮助工具,包含自动解析APK,自动查找,以及错误处理的重试机制
  • media: 此包是用于每天类消息的处理,涉及到音频编解码,图片压缩处理
  • okhttp: 针对okhttp的一个简单封装,用于网络请求以及文件下载,里面包含了下载、上传进度、重试机制、缓存策略
  • utils: 一些工具类

此仓库中包含企业微信以及个人微信的shared代码实现了

  • 针对Activity的hook
  • 针对数据库的hook
  • 针对文件操作的hook
  • 针对Log打印的hook

具体的代码解释我在这里就不具体介绍了,有kotlin和java基础的都应该能够看懂

shared代码一览

此仓库包含企业微信wework代码实现了

  • 通知消息接收解析
  • Application的hook
  • 会话消息的监听,包括:会话同步状态变更、新增了会话、退出群聊、消息已读状态变更、添加成员、收到新消息回调、改变了群主、消息草稿变更、消息更新、修改了群聊名称、移除消息监听、移除群成员监听、移除消息监听、会话被收藏、置顶、免打扰等等监听功能
  • 通知消息监听,接收所有通知消息的监听回调,并且实现了通知消息的解析

App入口代码

以下为代码运行的一些截图以及项目结构解释

项目入口介绍

初始hook结果

回调的结果截图

当然还有更多的功能不仅限于上述,更多可以查阅我针对企业微信的xposed学习的成果,这些成果的部分我将在后续通过讲解并上传:

可以访问链接查看    可以访问链接查看    可以访问链接查看

此为部分功能的截图,更多请点击上述链接查看

感谢关注

如果你在学习的过程中有其他问题,可以直接联系我的微信,添加时请备注:掘金-xposed/企业微信

我的联系方式

下一篇文章

  • 我将讲解如何在Android上针对微信使用的Silk编码的音频进行编解码
  • 如何在手机上做到调试模式,毕竟在开发中你并不想为了调试某个功能都去重启手机

项目源码地址

XMagicHooker

如果你觉得此项目中分享的代码对你有帮助,还请给个star

以上是 企业微信 Hook 学习笔记【2】 的全部内容, 来源链接: utcz.com/a/31413.html

回到顶部