先日のAndroidの大規模障害の原因は「WebView」
先日ブログでもご紹介したAndroidでの大規模な障害ですが、改善するには「WebView」と「Google Chrome」のアップデートとあったため、今まで目立つことにあまりなかった「WebView」に注目が集まった。
今回はそんな「WebView」についてご紹介しようと思います。
「WebView」って何?
簡単に説明すると、アプリを利用する際にアプリ内でWEBコンテンツを表示するための物です。
アプリ内に「WebView」を設置する事によりアプリからWEBブラウザに移動することなくWEBの閲覧が可能になるものと言う風に考えてもらうと分かりやすいと思います。
イメージで言うと以下のイメージです。
メニューなどはネイティブで制作し、検索後の商品画面はWEBサイトのページを表示というイメージです。この他にもニュースアプリやゲームアプリでも一部でWebviewが使われています。
なぜGoogle Chromeのアップデートも?
今回、「WebView」と「Google Chrome」のアップデートが必要となっていたがこれには理由がある。Androidのバージョンによっては「Google Chrome」を「WebView」の代わりに使っている場合がある。
これに該当する場合には、「WebView」ではなく、「Google Chrome」をアップデートする必要があるため、両方のアップデートを案内したのだと思います。
WebViewが無効になっており、更新できない場合にはGoogle Chromeを更新する事で今回の障害が改善できたようです。
何故アプリにWebviewが使われている?
アプリにWebviewが使われる理由は「開発コストが安く済む」「アップデートが不要」などの理由が挙げられます。デメリットとしては「通信環境により速度が遅くなる」などが挙げられます。
例えば、先に例で挙げたAmazonの場合には、既にしっかりと作りこんだWebサイトがあるため、流用した方が簡単に表示が出来、保守もWEB側のHTMLを修正するだけなのでWebviewを使うのは納得です。
さいごに
今回は結構大きな障害となりましたが、これもGoogleが日々ユーザーを保護するために様々なアップデートを行ってくれているからと言えるでしょう。
また、対応も迅速だったのも良かったと思います。