スマートフォンの邪魔な広告をroot化せずなんとかする

2013年4月20日土曜日

Android

t f B! P L

Androidの無料アプリに表示される広告やブラウザで見るスマホ向けWebサイトに表示される広告。
もちろん作者さんの開発費や生活費の足しになるでしょうし、開発のモチベーションにもつながるでしょうから広告自体は否定しませんが、非常に邪魔なケースがありますね。

例えばアプリの場合、そのアプリのメイン機能の操作で必ず押すボタンのすぐ近くに広告を配置して誤操作を誘っていると思われるもの。
サイトの場合、レスポンス悪くスクロールにくっついてきてメインコンテンツにかぶって読みにくくしているもの。
これらはどうかと思います。

また、アプリもサイトもそれ自体は軽いのに、時間帯によっては広告の読み込みで待たされて重く感じることが多々あります。
これは広告業者側がインフラ増強するなど対策すべきでしょう。

ということで、悪質なものを少しでも回避しましょう。
root化しない範囲で対応する方法を探し「FilterProxy」を試すことに。
仕組みや設定方法を説明しているサイトやブログはたくさんありましたのでここでは割愛しますが、
つまり・・・

  • スマホ端末内にプロキシサーバーをたてる。
  • 3G、Wifiとも、外部との接続はプロキシ経由に設定する。
  • プロキシは広告を取りに行く先をスマホ自身にすり替える。
  • 当然空振りするけどスマホ内部での話なので待ち時間ほぼゼロ。

という形ですね。

長い前置きでしたが、他のサイトであまり書いてない点で軽く迷子になったプロキシとポートの設定部分をメモ。
機種はGalaxyS3(SC-06D)です。

プロキシとポートの設定は、3G(LTE)とWifiでそれぞれ必要です。
他にポートを制御するような使い方をしていなければ、値はlocalhostの8000番でOK。

まずは3G。
システム設定またはFilterProxyの基本設定画面にあるプロキシ設定ボタンより、

  無線とネットワーク>その他の設定>モバイルネットワーク>APN>spモード

と潜って行くとプロキシとポートの設定があります。



次にWi-Fi。
Wi-Fiでつながってる状態で設定します。
自宅で2.4GHzと5GHzを使い分けていたり、出先でもWi-Fi接続するなど複数の接続先候補がある場合は、それぞれで設定する必要があります。

  無線とネットワーク>Wi-Fi>(接続中のSSID(接続先名称)を長押し)>ネットワーク設定を変更

ここのプロキシ設定で"手動で選択"を選択し、プロキシホスト名とプロキシポートを設定します。

あとは様子を見ながらFilterProxyのフィルタを適宜追加していきます。

広告の画像を取得できずに"?"マークが表示されたりもしますが、その画像の取得で待たされることを考えれば問題ないでしょう。
電車などで普通のサイトやアプリを見ているのにエロ広告が表示される、ちょっと恥ずかしい状況も避けられます。


このブログを検索

自己紹介

自分の写真
フリーランスで主にソフトウェア開発をしています。

QooQ