Repository navigation
Releases: 2909272751/video-lsposed
Release list
广告净化 1.1.0 — 两级菜单 / 隐藏桌面图标 / 暗黑模式
这次改了什么
设置页整个重做了,另外加了两个功能。
两级菜单
原来只有 4 个 tab,其中「其他」把 QQ音乐、滴滴、淘宝/闲鱼、微博、软件商店五个应用的开关堆在一屏(约 40 项)——在一屏里根本没法分辨某个开关属于哪个应用。
现在是:
- 根页:应用列表,每行是 应用图标 / 名称 / 版本 / 「已开启 X / 共 Y 项」/ 箭头
- 应用页:该应用自己的分组列表,每个分组带自己的计数
- 分组页:才是这个分组里的开关
淘宝和闲鱼合并成一个入口——它们本来共用一套规则,拆成两行就是两行一模一样的开关。「记录详细日志」和「恢复默认设置」挪到根页,它们是全局项,挂在某个应用下面本来就不合理。
一键隐藏桌面图标
右上角 ⋮ 菜单里。隐藏后桌面和应用抽屉都看不到这个应用,但规则照常运行。
恢复方式就是从 LSPosed 的模块列表再打开一次——模块的 MainActivity 一直保留着 LSPosed 的设置入口,只有桌面图标那个组件被禁用。
暗黑模式
跟随系统主题自动切换,对话框和菜单也跟着变。
顺带修掉的 bug
- appLabel() 缺 com.heytap.market 的映射,兜底返回「腾讯视频」——软件商店页的副标题写成了「强停并重新打开腾讯视频」。现在兜底返回包名,缺映射会显式暴露而不是悄悄说谎。
- 软件商店的「开机必备引导页」开关在 26.9.4_CN 上已经失效(功能改成了首页卡片,没有可拦截的入口),但开关还挂在页面上,翻它没有任何作用。已移除,并在分组里说明原因。
- 家族类规则(QQ音乐/微博等)的设置写入目标为 null,开关可能送不到对应应用。补了映射。
- 设置页重写过程中引入的两个崩溃/显示问题(onResume NPE、列表页计数全是 0/0)也一并修掉。
覆盖范围
9 个作用域应用:腾讯视频、优酷、爱奇艺、QQ音乐、滴滴出行、淘宝、闲鱼、微博、OPPO 软件商店。
安装
LSPosed 2.2.0 / API 102 / Android 8.0 以上,需要 root。签名沿用同一测试密钥,可直接覆盖安装,已有设置不会丢。
已知问题
优酷 11.2.15 上内部规则 youku_feed_ad_card 未命中(status=miss)。它不对应任何开关,是该版本的适配缺口,会在后续版本处理。其余规则正常:实测 27 条规则中 hooked 14 / 已按设置关闭 12 / miss 1。
校验
285c8f55ad88a84e396d0df41ee86d5433c6fb9c7bb8d66b79b8b2fbe77eaaf6 video-clean-v1.1.0.apk
大小 1,524,776 字节。
广告净化 v1.0.0
广告净化 1.0.0
把原先分散的 6 个 LSPosed 去广告模块合并成 一个 APK,装一次即可,不必再分别装五个模块。
包名保持 io.github.qqliveclean 不变。
覆盖范围(作用域共 9 个应用)
| 规则集 | 应用 |
|---|---|
| 视频 | 腾讯视频、爱奇艺、优酷 |
| 音乐 | QQ 音乐 |
| 出行 | 滴滴出行 |
| 电商 | 淘宝、闲鱼 |
| 社交 | 微博 |
| 系统 | OPPO / 欢太 软件商店 |
真机验证
- QQ 音乐 cold / hot / benefits / preload 全 matched
- 滴滴
config source=remote_prefs,install_summary hooked=23 - 淘宝 splash / popup / widget / sdk 全 matched
- 微博 hooks=24
- 软件商店 26.9.4_CN resource ids 21/21,matched 12 / off 2
统一设置页里可逐项开关,六类应用的开关都在同一个 App 里。
安装
- 安装本 APK
- 在 LSPosed 中启用「广告净化」,并勾选上面 9 个应用
- 重启手机(作用域缓存在 zygote,改作用域必须重启才生效)
- 从「广告净化」打开对应页面设置开关
首次安装不需要卸载旧的模块,但建议卸载,否则两套规则同时生效会互相干扰、也难以判断问题出在哪一套。
已知限制
- 软件商店的「开机必备引导页」规则在 26.9.4 上已撤回:该功能本版改成了首页卡片渲染,
不再是可拦截的引导页 Intent 工厂。要恢复需按卡片渲染路径重新分析。 - 优酷 58 秒前贴角标由
libaliplayer.so原生绘制,需要 NDK 编译原生补丁,当前未处理。 - 部分登录态相关的规则需要登录对应账号后才生效。
视频精简 v0.3.57
视频精简 v0.3.57
LSPosed 模块(libxposed API 102),移除腾讯视频 / 爱奇艺 / 优酷的启动广告、播放广告与界面广告位。
真机验证(本构建,0.3.57)
| App | 场次 | 命中 | 规则安装 |
|---|---|---|---|
| 腾讯视频 9.04.55.32321 | 8 | 7(ad_request_gate) |
稳定 |
| 爱奇艺 17.9.5 | 4 | 4 | 每场恒定 15 行 |
| 优酷 11.2.15 | 4 | 4 | 每场恒定 28 行 |
交付构建上三个 App 全部复验通过,规则行数与历次恒定值一致。
爱奇艺开屏广告消除有截图与 hit=iqiyi_splash 同一 PID 佐证。
本版变更
- 回退
reduce_preload默认值:验证后发现改动确实什么也没做(feature=reduce_preload由result=off变为整行消失,而非matched)。明知无效的改动不发布。推理留在代码注释中。 - 新增
module_build version=自证行 - 腾讯视频修复
context_probe_failed回归(Context 探测早于 Application 创建,轮询线程已删除——ContextFinder.find()首次调用即挂死,catch (Throwable)兜不住阻塞) - 移除转储诊断代码:优酷 1887 → 1266 行,爱奇艺 863 → 801 行,共约 680 行。转储次数由每场 18~28 次降为 0
已知限制
优酷前贴的倒计时秒数徽标无法拦截。 未登录状态下优酷仍下发约 110 秒前贴;模块能隐藏「会员可关闭此广告」胶囊,但「68秒」徽标由播放器原生层绘制(libaliplayer.so / libalixplayer.so / libads-ac.so),Java 层无可达 hook。证据链:标题不在 base.apk 与 390 个采样节点中、TextView.setText 探针只命中胶囊、SpannableStringBuilder(armed=8) 与 Canvas.drawText(armed=3) 静默、PasterAdRequestInfo 构造函数(armed=2) 静默(构造函数不可能偶然静默,故前贴不走 XAdSDK)。
登录后才能触发的规则(youku_mine_carousel、youku_mine_vip_promo、mine_banner_request、mine_banner_response、iqiyi_mine_banner、push_notify)经 feature= matched 确认规则已装上,但未在真实场景触发过,不作拦截承诺。
验收说明
模块日志中 hit=<规则名> 才能证明规则生效;hooked 不等于可用;feature=matched 只代表 hook 目标找到、规则已装上,不等于拦到过广告。
校验
SHA-256 f9a64dbd6f8b912607120bae1464f32ea19e7501492c17d18a934aaa3b920a68
包名 io.github.qqliveclean
签名 CN=QQLiveClean, O=Local, C=CN
证书 SHA-256 1c90c6600cb17130771802bd388fecca5b1c8dde869b2102e99ac3dced8230e0
安装后需在 LSPosed 中勾选作用域并重启目标 App。
视频精简 v0.3.12
视频精简首次公开发布,为腾讯视频、优酷、爱奇艺提供独立的 LSPosed 设置页。
本版重点
- 修复腾讯视频逐项隐藏底栏时整条导航消失的问题。
- “短剧”“会员专区”“好物”各有独立显示开关,始终保留首页和个人中心。
- 修复设置读取被旧缓存覆盖的问题,重开应用读取最新配置。
- 更新模块版本与三应用功能说明,逐项兼容检测和日志继续保留。
使用
下载并安装 video-clean-v0.3.12.apk,在 LSPosed 启用模块,勾选需要使用的应用。首次启用后重启手机,打开模块设置页配置;修改开关后强停并重开对应应用。
已签名,沿用此前版本证书,可覆盖同签名安装。SHA-256 校验值见下载附件。
验证范围
Android 16、LSPosed 2.2.0;腾讯视频 9.04.55.32321、优酷 11.2.15、爱奇艺 17.9.2。腾讯底栏已实测单项隐藏、组合隐藏、恢复全部、剩余入口跳转和强停重开后保持设置。优酷与爱奇艺沿用前序已验证规则。
不锁死单一版本,但不能保证所有版本和所有广告路径。未做量化耗电基准,不承诺固定省电收益。