Repository navigation
ClearApp v1.0.2
- 模块包名:
io.github.wuqiao309.clearapp - 版本:v1.0.2(versionCode 3)
这一版做了什么
番茄多清掉一个悬浮球
番茄 7.3.9.32 里其实也有那个老式「一键领」挂件(和红果右侧那个是同一套 SDK),之前的规则一直没拦到。
这一版补上了。
规则能自己适应 app 升级
番茄/红果的底层组件是混淆的(r32.o 这种),包号每次打包都会变。上次从 7.3.7 升到 7.3.9,
5 条规则就因此失效了,得人工重新映射。
这一版加了结构兜底:先按名字找,找不到时按方法签名再去 dex 里捞一遍 —— 签名里的类型是框架
类型(android.view.ViewGroup、Context),跨版本不变。
实测试出来的效果(把目标名故意写成上一版的旧名字):
按结构找回 (android.view.ViewGroup, int, android.content.Context) -> void -> y32.o#t
已挂载 float-pendant-legacy-attach -> y32.o#t
也就是说以后 app 再升级,一部分规则能自己恢复,不用等新版本。
代价:APK 从 652 KB 变成 2.45 MB(多带了一份 DexKit 的 native 库,四个 ABI)。
这个兜底只在按名字找不到时才跑,平时没有额外开销。
功能
番茄免费小说 com.dragon.read
| 位置 | 处理 |
|---|---|
| 底部主 tab | 只保留 书城 / 书架 / 我的(去掉短剧、赚钱、分类) |
| 书城顶部子 tab | 去掉 看剧 / 视频 / 商城 |
| 书架顶部子 tab | 去掉 收藏 |
| 「我的」页 | 去掉 金币 / 现金余额 / 微信提现 / 福利 整块,以及底部 推荐流 |
| 悬浮球 | 金币挂件、发帖球、继续看悬浮窗、冷启增长悬浮条、一键领挂件(本版新增) 全部去掉 |
红果免费短剧 com.phoenix.read
| 位置 | 处理 |
|---|---|
| 底部主 tab | 只保留 首页 / 剧场 / 我的(去掉商城、赚钱) |
| 悬浮球 | 金币挂件(KMP 版 + 老式版)、一键领挂件、主页面悬浮窗、冷启增长悬浮条 全部去掉 |
保留的东西
番茄听书的「边听边读」悬浮球没有拦 —— 它是跳回阅读器继续听看的功能入口,不是引流组件。
红果「我的」页的金币和提现入口也没动。
适配版本
| app | 包名 | 版本 |
|---|---|---|
| 番茄免费小说 | com.dragon.read |
7.3.9.32(versionCode 73932) |
| 红果免费短剧 | com.phoenix.read |
7.3.9.32(versionCode 73932) |
环境要求
| 项 | 要求 |
|---|---|
| Android | 8.0+(API 24+) |
| Root | KernelSU / Magisk |
| Xposed 框架 | Vector 2.2 或 LSPosed,Xposed API 101+ |
实测环境:红米 K70 至尊版(Android 16)+ KernelSU + Vector 2.2。
安装
从本 release 下载 APK 安装,在 LSPosed 管理器里启用模块、勾选 com.dragon.read 和
com.phoenix.read,然后强制停止目标 app 再打开。
装完模块后第一次冷启可能仍跑的是旧版本,框架需要一点时间重新读模块。再 force-stop 重启一次
即可。
排查
模块把自己挂上的每一条规则都写进日志:
adb logcat -d | grep "ClearApp/"日志里的模块版本(模块加载 v1.0.2(3))能直接看出跑的是哪一版。跳过 xxx:目标方法不存在
说明那条在这个 app 版本上没生效。