HTML5への移行が進む可能性が高いことは、アプリ開発者の動向からもうかがえる。iOSとAndroidという二つのモバイルOSが支配的な状況において、アプリ開発者は両方のモバイルOSへの対応をなるべく効率的に行う必要に迫られていた。
そこでアプリ開発者が選んだのが、アプリの中身をHTML5で記述する方法だった。例えばAndroidの場合、「WebView」と呼ばれるクラスを用いることで、アプリの内部でHTMLレンダリング・エンジンやJavaScriptエンジンを利用できる。パッケージだけはそれぞれのOSに合わせたアプリの形にして、HTML5で記述した内部のロジックは共用する方法が広く用いられている。
ただし、HTML5といえどもマルチプラットフォーム化には限界がある。例えばハードウエア制御用のAPIにはOSごとの差があるからだ。たとえW3C(World Wide Web Consortium)での標準化対象となった部分は共通でも、その他の部分はそれぞれのモバイルOSで独自になることがほとんどだ(表1)。OSごとに異なる呼び出し方を使い分けなければならない。また、あるOSは対応済みだが他のOSでは未対応なハードウエアもあるだろう。パソコンのWebアプリのように、まずは特殊なハードウエアの制御を行わない用途がHTML5アプリの中心になりそうだ。
HTML5アプリが中心になる未来を見据え、Webブラウザーの開発競争も激しくなっている(図6)。
Google社は、ChromeおよびChrome OSの基となるオープンソースのWebブラウザー「Chromium」のレンダリング・エンジンを、「Blink」として「WebKit」から分岐(フォーク)させることを2013年4月に発表した。Google社はAndroidの標準ブラウザーやChromiumでWebKitを使ってきた。同社によれば、Chromeはマルチプロセス・アーキテクチャを採用している点がApple社のSafariなどの他のブラウザーと異なるため、開発作業が煩雑になっていたという。
Blinkの分岐により、Apple社、Google社、Microsoft社、そしてMozillaという主要なWebブラウザーの開発母体すべてが独自のレンダリング・エンジンを使う状況になった。HTMLレンダリング・エンジンの性能や機能の重要性が高まっていることの表れだ。
Mozilla FoundationとSamsung社は同じ日に、マルチコア・プロセサ向けのレンダリング・エンジン「Servo」をARM上のAndroidに移植するために協力すると発表した。このレンダリング・エンジンが次世代のFirefox OSに使われる可能性もある。