Android平台Chrome、Firefox和Opera Mobile广告过滤方法

2012-12-07 12:56:17来源:沙丘作者:

由于手机屏幕尺寸限制,通常网站手机版显示内容更加简洁,当然也就减少或者是去除了广告。但毕竟还有很多网站没有专门的手机版,或者是手机版的文字广告也占据不少空间。Opera和Google合作后,Opera mini也不再过滤

由于手机屏幕尺寸限制,通常网站手机版显示内容更加简洁,当然也就减少或者是去除了广告。但毕竟还有很多网站没有专门的手机版,或者是手机版的文字广告也占据不少空间。Opera和Google合作后,Opera mini也不再过滤Google搜索广告了。Chrome、Firefox和Opera手机版都有各自的广告过滤功能。


通用方法

  • 未Root:Adblock Plus for Android(Firefox请用Adblock Plus for Firefox);
  • Root:hosts和一切可以更改hosts的工具(比如AdAway)。

Adblock Plus for Android来自大名鼎鼎的adblockplus.org。支持在非Root环境下对Wifi拦截广告(Root后支持3G环境过滤),目前只能订阅规则,不能自定义。最大的缺点是需要驻留后台,内存占用不小。
Root后可以编辑规则文件:

/data/data/org.adblockplus.android/files/patterns.ini

题外:Adblock Plus当初信誓旦旦的说不开发Chrome版,现在不仅有了Adblock plus for Chrome,还有Opera、K-Meleon。

为什么 Adblock Plus 看起来这么耗流量?
为了过滤广告,所有的网络流量都必须先经过 Adblock Plus 应用,而 Android 系统会认为这些流量都是它产生的,但实际上这里说的流量恰恰就是网络全部流量的总和。

Hosts属于万能大法了,优点、缺点都和PC上一样。Hosts只能作用于网站域名,将需要拦截的域名IP地址限制为127.0.0.0或0.0.0.0,遗憾的是不能细化。
Android默认hosts文件位置:

/etc/hosts


Chrome for Android(root)

桌面版的Chrome支持用户全局css,Chrome for Android也继承了这一特性。全局css,局限明显。但隐藏部分内容,对于手机屏幕来讲也能节约不少空间。
Custom.css位置:

/data/data/com.android.chrome/app_chrome/Default/User StyleSheets/Custom.css

PC版的Custom.css位置:

\User Data\Default\User StyleSheets\Custom.css


Firefox for Android

和桌面版一样,ABP几乎快成为Firefox的标配了。Adblock Plus扩展手机版也不支持自定义。
Root后也可以编辑规则文件:

/data/data/org.mozilla.firefox/files/mozilla/xxxxxxx.dafault/adblockplus/patterns.ini

当然还有其他支持过滤的扩展,NoScript、Stylish也都支持手机版。


Opera Mobile(欧朋HD)

Opera Mobile可以看作是PC端的Opera,广告过滤也继承了urlfilter.ini和custom.css(全局),设置方法:

  • opera:config – network – url filter file,选择urlfilter.ini文件位置 – 保存;
  • opera:config – user prefs – local css file,选择custom.css文件位置 – 保存。

网络上也有不少过滤规则订阅源,比如《Opera Mobile广告过滤列表订阅源》。


PC端浏览器伪装手机上网

正如开篇所说,很多网站有PC版,也有手机版,两个版本的代码是不同的。而且一些网站在不同的浏览器下CSS代码也不同,比如Google在Chrome和Opera Mobile中就有明显区别。因此不能直接套用PC版的过滤规则,还是根据自己浏览习惯自定义规则比较好。
PC端编写过滤规则也简单,只是多了一个浏览器伪装手机上网的步骤。
以Firefox为例,可以通过User Agent Switcher扩展,或者是建立“general.useragent.override”字符串等方法更改浏览器的UserAgent。详细方法参考《Firefox手动更改UserAgent,伪装成手机或其他浏览器》。

常用浏览器的User Agent String可以查阅:
http://www.useragentstring.com/pages/useragentstring.php
Google官方也说明了Chrome for Android的User-Agent:
https://developers.google.com/chrome/mobile/docs/user-agent


编写广告过滤规则的方法这里不再赘述。
Opera mini和UC等采用云端压缩的浏览器不在讨论之列。

关键词:ChromeFirefoxOpera

赞助商链接: