LoginSignup
380
361

More than 5 years have passed since last update.

滅び行くAndroid 標準ブラウザをサポート外にして悩みの種をなくす話

Last updated at Posted at 2015-11-11

Android 4.3使Android BrowserIE6

Google
https://plus.google.com/+AdrianLudwig/posts/1md7ruEwBLF

使
ChromeAndroid 


JSUAUA

Android端末ユーザーエージェント一覧

auは1ページにまとまっていて見やすかった。
docomoは見るの面倒だったので有名そうなやつだけ選んで確認しています。

AndroidのブラウザのUAをいくつかピックアップしました。

機種 UA
Xperia Z4 SOV31 Mozilla/5.0 (Linux; Android 5.0.2; SOV31 Build/28.0.D.0.404) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.93 Mobile Safari/537.36
Xperia Z1 SOL23 Mozilla/5.0 (Linux; U; Android 4.2.2; ja-jp; SonySOL23 Build/14.1.C.0.467) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30
isai FL LGL24 Mozilla/5.0 (Linux; U; Android 4.4.2; ja-jp; LGL24 Build/KVT49L.LGL2410a) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.1599.103 Mobile Safari/537.36




ChromeFirefoxOperaAndroidNG

ChromeLinux;Linux; U;Linux; U;Chrome

Android OS

UAAndroidLinux; U;Chrome

JS

js
var isAndroidBrowser = false
var ua = window.navigator.userAgent
if (/Android/.test(ua) && /Linux; U;/.test(ua) && !/Chrome/.test(ua)) {
  isAndroidBrowser = true
}

Chromeがあるときはインテントさせて、ないときはGoogle Playに飛ばす方法

標準ブラウザだったときに、Chromeへのリンクを表示させます。

  • ChromeがあるときはChromeでそのままこのページを開く
  • ChromeがないときはGoogle PlayのChromeのページに飛ばす

iOSと違ってAndroidの場合はhrefにintent://を入れれば自動的にやってくれます。

intent://{path}#Intent;scheme={protocol};action={package};

chromeのパッケージ名はcom.android.chromeになります。

たとえば https://gamy.jp というURLの場合のHTMLはこんな感じになります。

html
<a href="intent://gamy.jp#Intent;scheme=https;action=android.intent.action.VIEW;package=com.android.chrome;end">Google Chromeでひらく</a>

標準ブラウザだったときにページトップに大きく警告を表示させる




GAMY
CSS

html
<div class="alert"></div>
css
.alert {
    position: relative;
    height: 80px;
    width: 100px;
    margin: 0.5em auto 1.5em;
}
.alert:before{
    content: "!";
    position: absolute;
    z-index: 2;
    top: 20px;
    left: 0;
    width: 100px;
    text-align: center;
    line-height: 60px;
    font-size: 46px;
    font-weight: bold;
    color: #111;
}
.alert:after{
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -50px;
    z-index: 1;
    border-width: 0 50px 80px;
    border-style: solid;
    border-color: #f9d311 transparent;
    background: transparent;
}

サポートを終えて

特にサポートをやめて、目に見えて良かったのはベンダープレフィックスがかなり消せます。
IE8も年明けにはサポート切れるので、かなり明るい未来が見える気がします。気のせいなんだろうな・・・

それでも問題が・・・

Android 4.0系以下はChromeのサポートも切られてしまっているので、他のブラウザ(Firefoxとか)に流す必要があります。

380
361
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up

380
361