关于打开App的广告,Android上有各种自动点击跳过广告的软件,比如自动跳过、李跳跳等。 不过iOS由于系统原因,基本不用考虑这类应用(越狱除外)。除了越狱, 我们也可以通过屏蔽应用的广告地址来屏蔽应用广告。
原理简单说明
各种App屏幕广告经常变化,所以广告图片必须通过网络下载,我们只需要屏蔽它的下载地址,让它下载失败就可以了 屏蔽广告的效果; 当然,如果App内置了广告图片,这种方法就不适用了。
1. 安装网络调试软件和抓包软件
- 网络调试软件:用于拦截广告网址。 本文以Shadowrocket为例。 当然也可以使用Quantumult/Quantumult X/Loon/Surge等同类型软件。 原理是一样的。
- 温馨提示:Shadowrocket这款软件在国内没有上架,在美国售价2.99美元。
- 抓包软件:用于抓取App广告网址。 本文使用Thor Http。 当然,你也可以使用同类型的免费Stream。
2、使用抓包软件查找App广告地址
本教程以网易云音乐App为例。 看一次广告(注意有些app有多个屏幕,可以反复关闭和打开app看看是什么广告),下图是滴滴货运的广告
注:因为网易云 已打开音乐App,广告图片已下载到您的手机,无法抓取下载地址。 您需要清除App图片缓存或卸载并重新安装; 其他app同理
打开Thor Http抓包开关,然后启动网易云音乐app,打开后出现屏幕广告进入App,可以返回Thor Http关闭 数据包捕获开关; 然后打开抓包记录,找到刚才看到的广告图片,点击复制网址; 如下图
这里只需要复制广告网址中的域名,而不是整个图片的地址。 例如,这里只需要
iadmusicm.music.126.net
3.将抓到的广告域名填入Shadowrocket
打开Shadowrocket配置-点击默认文件(default.conf)-编辑配置-添加新规则,类型选择DOMAIN
,选项选择REJECT
,域名就是粘贴刚刚抓到的广告域名,这里是 iadmusicmat.music.126.net
添加后点击保存
,然后回到Shadowrocket主页,全局路由配置
,最后打开App开关(不需要Node),此时网易云音乐的开屏广告已经被屏蔽了; 如果有打开的广告,先下载到手机上,可以清除app的图片缓存; 其他app也可以用同样的方法来屏蔽开屏广告甚至不限于开屏广告,只要能找到广告网址即可~
关于规则类型说明
- DOMAIN- SUFFIX
根据域名后缀
判断例如输入baidu.com过滤zhidao.baidu.com、pan.baidu.com等baidu.com后缀站点 - DOMAIN-KEYWORD
根据关键字判断
例如输入baidu,可以过滤baidu.com, baidu.cn, baidu.net - DOMAIN
等含有baidu字的网站
根据域名判断
对于 例如输入www.baidu.com过滤www.baidu.com的网站/* - IP-CIDR
判断是否是局域网 - GEOIP
判断服务器地址 - FINAL
剩余网站
附加说明
如果使用一段时间后,广告再次出现,或者您没有打开该应用程序是用Shadowrocket 开关打开的,导致广告 待下载的本地镜像; 或者 App 广告图片更改了地址,新的抓图被添加到规则中。
顺便分享一个Github上的广告规则文件:
配置文件:Complete.conf