国产安卓去广告脚本:不是一键万能,先看 issue 再插线

发布时间:2026/11/2 15:25:21
国产安卓去广告脚本:不是一键万能,先看 issue 再插线

先说结论(赶时间就看这段)

刷到那个“国产安卓一键去广告”的开源脚本,想知道能不能用——

我的答案是:能用,但别抱“一键”的期待。

三句话说清楚:

  • 它不 root、不删系统应用、不碰系统分区。本质是用数据线连上电脑,让程序替你在设置页里一个个点开关。
  • 它给每个手机型号准备了一份“操作录像”(项目里叫机型脚本)。录像里有你的型号、你的系统版本又跟录像时接近,成功率就高;对不上,它会老实跳过,不会瞎点。
  • 最坏的结果不是手机变砖,而是有些广告没关掉,或者个别功能被顺手关了——而且基本都能改回去。

所以真正该做的第一件事不是插线就跑,而是先去它的机型表里找你自己的型号。

它到底在干什么:不是卸载,是替你点设置

很多人一听“去广告脚本”,脑子里是“把广告 App 卸了”或者“改系统文件”。都不是。

它把国产手机上的广告拆成六道关卡:

系统广告 / 热搜资讯 / 推广位 / 营销推送 / 广告组件 / 快应用

前四关的做法基本一样:程序读一下当前屏幕上的文字,找到“设置”“隐私推荐”这类字样,点进去,把开关关掉——跟你自己拿手指点,走的是同一条路。后两关(广告组件、快应用)不点开关,而是把对应的包“挂起”,相当于让它暂时休眠而不是卸载,这一步要求机主同意。

六道关卡大致是这样,一张图看懂它管哪些东西。

快应用那关有个细节值得单说:它关的时候会故意留下一个平台组件。因为早期版本把它一起挂起了,结果有人 OPPO 负一屏的快递卡片直接打不开,点开弹一句“快应用服务框架目前无法使用”。后来专门改了代码,把这个组件留着。

这个例子挺能说明项目的做事方式:不是关得越狠越好,而是关完之后手机还得能正常用。

正常流程是一步步往前走的:

  1. 只读检查——看型号、系统版本、有没有锁屏,不动任何东西
  2. 备份——给当前设置拍个快照,这是你以后反悔的依据
  3. 跑机型脚本,一段一段关
  4. 处理营销通知
  5. 关快应用
  6. 收尾

每一步都要求上一步先过。不备份就直接改开关这种事,流程里不让做。

最扫兴但最重要的一句:第一次跑,很可能失败

这不是吓你,是有真实例子的。

一个 OPPO Find X8s 用户,拿最新的打包版跑,结果是“关闭各 APP 里的广告开关失败”。他的系统版本跟脚本记录的完全一致,照样好几段没过去。

维护者那边的回复也挺实在:这是这个机型脚本合并进去之后收到的第一份真机反馈。换句话说,你那一刻不是在用工具,是在替这个项目当这台机型的测试员。

这位用户没争辩,回了一句“稍等,我重新执行一次,把日志贴这里”,然后真贴了。

后来这个反馈被拆成一个单独的 bug:游戏中心的“设置”入口,从一行文字变成了右上角一个齿轮图标,而且只有切到“我的”那一栏才出现。脚本还在按“设置”两个字去找,页面上根本没有这两个字,那必然找不到。

所以失败不是玄学,是录像的时候页面长这样,你的手机上已经长成那样了。

拿到刚支持的新机型,把预期调成“可能失败”反而顺了:跑挂 → 按提示重跑一次 → 把日志贴到反馈区 → 等下一版。

能不能用,先看这张表

README 里有一张“实测过的机型”表,用三种符号标验证程度:

  • ✅整轮真机跑过——可以照着脚本走
  • ⚠️路径实测过,但整轮还没复测——你跑就是帮忙验证,要有心理准备
  • ❌待补 / 页面不一样——基本只能靠手动清单

这里有个特别容易踩的误区:“我同品牌”不等于“我也能用”。

同是 OPPO,Find X8s 是 ✅(10 月 28 日整段重跑通过,一百多个开关逐项回读确认过),Find X9 Ultra 也是 ✅(10 月 29 日八段整轮通过,跑了 211 秒);但 Find N6 只有 ⚠️,另一个型号直接标 ❌,理由是“页面跟 N6 不一样,待补”。

表里 11 台跑通过的机型,整轮用时从 55 秒到 235 秒不等。注意:这是“已经跑顺”之后的复跑时间,不算你第一次的时间。

还有一件事:✅ 只代表某个时间点、某个系统版本上成立。上面那位 Find X8s 用户,表上明明写着 ✅,实际照样翻车。所以看表的时候顺手对一眼系统版本。

表里没有你的型号,也不是没办法

工具会自动给你列一个同品牌的参考脚本(比如小米系统一借某一个型号),你可以用“安全模式”跑。

安全模式的规则很简单,就三条:

  • 只关参考脚本点名了的开关
  • 找不到入口就跳过
  • 绝不做任何猜测性点击

代价也很直白:大部分段落会报“没找到”。

有个小米 15 用户的实测:9 段里 5 段没报错,4 段失败,报的是“没找到更多安全设置”“没找到隐私设置”。这不是 bug,这就是安全模式该有的样子。

它帮不了你的地方也说清楚:参考脚本没点名的开关它不碰;入口换了条路它也不会自己绕过去猜。

所以表里没有你的型号时,顺序建议是:先跑通用那三项(营销通知、快应用、广告包挂起),再照着仓库里的官方清单手动补,参考脚本只是兜底。

要准备什么,大概多久

准备:一台电脑(Windows 10/11 或 Mac)、一根能传数据的数据线、手机上打开 USB 调试。Windows 认不到手机的话可能要装品牌驱动,文档里按小米、OPPO、vivo、荣耀列了来源。

时间分三种情况:

你的情况大概要多久
机型表里有你,系统版本也对得上4~6 分钟
已经跑顺了,只是复跑1~4 分钟
表里没有你,靠参考脚本 + 手动清单30~60 分钟

别拿前两行的数字当首次预期。那些是路径已经验证过之后重复执行的时间。第一次可能碰上小版本偏差、页面加载慢,甚至要重跑一遍,时间得留出余量。

动手前一定先备份。备份会在电脑上生成一个“型号-日期”的文件夹,存的是改动前的状态快照,将来出问题全靠它还原。没备份就执行,出了问题只能自己翻设置页一个个找回来。

最坏会怎样

先给结论:不会变砖。

项目不 root、不改系统分区,用的都是系统自带的开关和“挂起”。真正可能发生的坏结果长这样:关快应用之后,某个依赖它的功能不能用了——就是前面说的快递卡片那件事。

而且这类问题基本都可逆:

  • 挂起的广告组件 → 一条恢复命令搞定,不用重装系统
  • 营销通知 → 按备份里的渠道清单重新打开
  • 快应用 → 一条命令开回来
  • App 里的单个开关 → 照着清单手动开回去

至于恢复出厂设置,那是数据清空级别的最后兜底,属于“万一你真想不起来关了啥”才用的招,不是日常风险。

如果你没有专用脚本、走的是安全模式,那最坏结果更轻:某些广告没关掉,而不是关错了东西。

三个最常见的翻车点

讨论区几十条反馈看下来,大部分失败不是“用户不会用”,而是踩在这三个坑上。

1. 系统小版本不一样

机型脚本是照着某个具体系统版本录的。你的小版本一偏,入口路径就变了——那个齿轮图标就是典型。这种只能等维护者改,或者你贴日志帮忙定位。

讨论区 38 条反馈的主题分布,能看出失败集中在哪几类。

2. 列表里出现了同名的行

有华为 mate50 用户碰上这个。鸿蒙 4.0 上,应用通知页把分组名“营销通知”也写进了列表,跟真正的渠道行长得一模一样。工具看到同名出现两处就直接放弃了。所以日志里最后那 27 个“仍开着”不是新 bug,而是保护机制发现一次点击可能影响到同一个 App 的其他渠道,先把状态点回去,然后整批停下。

这种失败需要真机复测才能修,不是用户能绕过去的。

3. 电脑上有别的程序在抢 adb

手机助手、投屏这类工具都占用同一个端口。它们一退出,连接就断了,工具误以为“这个 App 没装”,于是后面几段全报“本机没有安装 xxx”。

现象是整轮突然中断。解决办法很土:跑之前先把手机助手、投屏软件全关掉。新版本已经把这种情况改成明确提示“adb 连接断开”。

为什么我不敢跟你说“我亲测有效”

这点想单独说,因为它决定了你该信这篇文章到什么程度。

我这边能跑的,是一个模拟设备,不是真手机。识别设备、检查状态、查快应用、导出状态、生成备份,五个操作都跑通了,全部正常退出,用时都在几秒内。

这一段是在模拟设备上跑的,不是真机截图。

但“跑通”只说明程序本身没崩、入口没写错,一点都不能说明你手机上的广告真的关掉了。这两件事差得远。

项目自带的测试集也不是全绿:593 个测试里 562 个通过,29 个失败或报错。一部分报错是因为环境里缺 adb,但仍有几条是实打实的断言失败,说明测试和实现都还有要修的地方。

项目自带自动化测试的结果分布,不是全绿。

发布记录里也写得很直白:华为、vivo、OPPO、小米的几处改动“没有真机验证”;新增的机型脚本“没有维护者真机验证”。

10 月 27 日到 30 日,三天里发了五个版本。

节奏快是好事,说明有人在管、反馈有人接。但另一面是:很多修复是等着用户去复测的。所以开始前先下最新版,别拿旧客户端跑新机型。

这也是我全篇都在说“看机型表”“先备份”“第一次可能失败”的原因。这个项目值得用,但它现在还不是一个消费级产品,是个需要用户搭把手的东西。

一句话总结

适合你,如果你:

  • 去机型表里查过,自己的型号和系统版本对得上(✅ 或 ⚠️)
  • 或者表里没有,但你愿意照着清单手动补,甚至自己写脚本提上去
  • 能接受第一次跑失败,愿意把日志贴到反馈区

不适合你,如果你:

  • 手里只有原生鸿蒙设备(README 明确写了暂不支持)
  • 期待“插上线就一键关干净”,不想碰命令行,也不想对着清单手动点
  • 机型完全不在表里,又不愿意做任何手动操作

第一步永远是这三条命令,而且它们都不会改你手机的任何开关:

python tool/run.py devices python tool/run.py -s <你的序列号> check python tool/run.py -s <你的序列号> backup

识别到设备 → 看清型号和脚本提示 → 存个快照。确认这三步都干净了,再考虑执行。

用的是桌面客户端也一样:先在“检测”页把型号和脚本提示看清楚,不要直接进“执行”。