写在前面:
内核不是我从零写的。规则引擎来自开源项目,跳过逻辑参考了另一款跳广告工具,
我做的是:把它们合成一个能用的东西、重做界面、加安全闸门、去掉所有推广入口。
所以下面只讲「怎么合、为什么这么设计」,不吹原创引擎。
────────────────
■ 一、基本情况
包名 com.shunqi.app
版本 1.4(versionCode 140)
体积 4.32 MB
系统 Android 8.0+
权限 联网 / 查询已安装应用 / 前台服务 / 通知
联网 仅规则更新(约 12 小时一次 GET),无上报
────────────────
■ 二、为什么是"双引擎"
开屏广告有两类,单一方案吃不下:
1) 有明确控件属性的
这类用选择器规则最准:按 text / id / desc / 父子关系定位,
按钮挪位置也认得。库里有 628 应用 / 1426 条。
2) 广告 SDK 自绘、界面上看不到属性的
这类规则没法写,只能靠"界面上有'跳过'两个字就点"。
兜底条件收得很紧:文字极短、控件小(宽 30% 屏高 一律不点
· 包名黑名单:包安装器、权限控制器、系统设置、systemui —— 硬编码不碰
· 频率:同规则 5 秒冷却;单应用 60 秒最多 5 次;每次进应用最多 3 下
· 排除名单:任意应用可单独拉黑,两套引擎都不动手
· 自身事件直接忽略(不然会把自己界面上的"跳过广告"当按钮点掉)
────────────────
■ 四、可调项与默认值
开启规则 默认开
安全模式(前 3 秒) 默认开
盲点/坐标 已移除(误触率太高,砍了)
兜底找字 内置,条件同上
────────────────
■ 五、安装与保活
- 开启无障碍:设置 → 无障碍 → 已下载的应用 → 瞬启
- 电池策略设为无限制(主页 → 保活 → 一键跳转)
- 自启动打开(同上,按厂商做了 intent 兜底)
- 回主页确认状态卡显示「运行中」
无障碍被系统杀掉 = 全部停摆,这是这类工具的通病,别只加白名单不开自启动。
────────────────
■ 六、已知限制
· 克隆/分身容器内启动的应用:无障碍拿不到真实窗口,放弃
· 图片型 / 视频层自绘的跳过键:无文字无 id,跳不了
· 应用内局部广告(信息流、悬浮):不处理,规则误伤率过高,全部剔除
· 部分 ROM 的预测性返回会绕过应用层拦截,主页返回仍是直接退出
────────────────
■ 七、更新日志(1.0 → 1.4)
1.1 弹窗主题统一(圆角 24dp / 统一主色);修掉透明背景弹窗
1.2 服务状态检测改用 AccessibilityManager(原来反射的工具库被裁剪了)
1.3 增加「跳过」文字兜底前置,百度网盘这类提速明显
1.4 心跳 2s→5s、灭屏不轮询;返回二次确认;版本号改为动态读取
────────────────
■ 八、下载
链接:点击下载
声明:个人作品,免费使用,不含任何付费功能。
仅供个人学习研究,请支持正版应用。




请登录后发表评论
注册
停留在世界边缘,与之惜别