アクセス解析をしていて、ふと気になりました。
Google アナリティクスでは「Android Browser」とわかりやすく表示されていますが、他のアクセス解析だとそんな項目がない。一体どこに集計されているんでしょう?
(あれ?そもそも、Androidに標準でインストールされているウェブブラウザって何だっけ?)
そんな今更なお話です。
ウェブブラウザと一言で言っても、色んなブラウザがありますよね。
マイクロソフトが作ったInternet Exploler。
Googleが作ったChrome。
Mozillaが作ったFirefox。
Appleが作ったSafariはMacやiPhone、iPadで採用されています。(Windows版もあるそうです)
ではAndroidで使われているブラウザって何でしょう。
※自分でブラウザアプリをダウンロードして使っている場合は、もちろんそのブラウザなのですが、今回のお話は標準でインストールされているウェブブラウザです。
- 見たことがないアイコン
- アプリ情報を見ると、アプリの名前は「ブラウザ」
- 試しにdocomoのHPからある機種の端末スペックを見てみると、搭載ブラウザのところにこんな表記が。
[ユーザエージェント]
■標準ブラウザ(デフォルトブラウザ)
Mozilla/5.0 (Linux; U; Android 4.2.2; ja-jp; L-01F Build/JDQ39B) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.2 Mobile Safari/534.30
え?
Mozilla?
AppleWebKit??
Mobile Safari???
どういうこと?AppleとSafariは関連するのでまだ分かるとして、Mozillaって別物ですよね?
というかAndroidってGoogleが開発したOSなのに、標準のウェブブラウザがApple製??
ここで、素人の私は頭が混乱してしまいました。
まずユーザエージェントとは何か調べました。
ユーザエージェントとは:
利用者があるプロトコルに基づいてデータを利用する際に用いるソフトウェアまたはハードウェアを指す。
引用元:「ユーザーエージェント」(2014年3月27日 12:00 UTCの版)『ウィキペディア日本語版』。http://ja.wikipedia.org/wiki/ユーザーエージェント
難しいのですが、要はHTTPプロトコルを使ってインターネットサイトを閲覧するソフト「ウェブブラウザ」もユーザエージェントなわけです。
メールの送受信をするメールソフトもユーザエージェントです。
ブラウザを使ってサイトを閲覧する際に、ブラウザはWEBサーバにHTTPリクエストを送ります。「このアドレスのサイトを見せてくださーい!」っていうリクエストですね。
そのリクエストと一緒に、こちら側の情報(OSや使用しているブラウザの種類、バージョンなど)をユーザエージェント文字列として渡します。
ウェブサーバではその情報を元に、適切なコンテンツを送り返してくれます。
で、ここからが肝心!
サイトによっては、ウェブブラウザに合わせて表示するコンテンツを変えたり、拒否することがあります。
どういうことかと言うと、昔はMozillaが作ったNetscape Navigaterというブラウザと、マイクロソフトのInternet Explolerの2つがシェアの大部分を占め、競い合っているような状況でした。
そしてこの2つのブラウザはそれぞれの独自タグなども多く、挙動が異なることが大いにありました。
そうすると、サイトによってはどちらかのブラウザだけをターゲットにしてサイトを作り、「Netscape Navigaterでの閲覧を推奨します。」と言い出したり、極端な場合はNetscape Navigater以外のブラウザからの閲覧を拒否するというサイトもありました。
そこでInternet Explolerが取った作戦がコチラ。
ユーザエージェント偽装!
ユーザエージェント文字列の初めに、「Mozilla/<version> 」と記述し、Netscape Navigator用に設計された内容も受け取れるようにしたのです。
お、恐るべし…!
後にたくさんのブラウザが登場し、同じ作戦を取っていったため、今ではほとんどのブラウザのユーザエージェント文字列が「Mozilla/<version>」で始まります。
つまり。私なりに簡単にまとめます!
- Androidの標準ウェブブラウザは、Googleが開発した名前なきブラウザ。
- ユーザエージェント文字列に「Mobile Safari」というのがあるは、おそらくユーザエージェント偽装。(Safari向けコンテンツを受け取れるようにするため)
- そのためアクセス解析によっては「Safari」として集計されることがある。(Googleアナリティクスは賢くて「Android Browser」として集計してくれる)
ちなみに、最近のAndroidではこの標準ブラウザと別にAndroid版Chromeもインストールされている機種もあります。
また、Android標準ブラウザの開発は終了するとGoogleが発表したそうです。
参考サイト:
どうしてAndroidに標準装備のブラウザはChromeではないの? – いまさら聞けないAndroidのなぜ | マイナビニュース
http://news.mynavi.jp/articles/2014/02/04/android_why17/
コメント