グーグルはChromeとAndroidという2つのOSを持っている。同じグーグルのOSといってもこの2つは全く別物で、Android対応Chromeブラウザ等の例外を除いては、互換性はない。現状では開発者は、ChromeとAndroidそれぞれのアプリを開発しなければならないが、間もなくその状況が変わるかもしれない。

報道によると、グーグルはChrome用に開発されたアプリを「包む」形でiOSやAndroidへ移植することを検討しているようだ。Chromeアプリはウェブを前提として設計されている点が、Androidアプリと違う点だ。これは、Chrome OSとブラウザがどちらもウェブ用のエンジンであることによる。ChromeアプリはHTML、CSS、JavaScriptといった基本的なウェブ言語で作られていて、ブラウザ外部での起動やオフライン使用が可能なのが、通常のウェブアプリと違う点だ。

グーグルは、Chromeアプリをハイブリッド化してAndroidとiOSに対応させ、それぞれGoogle PlayとアップルのApp Storeからダウンロードさせることを狙っている。TheNextWebがGithub (GitHub.comにより運営されているホスティングサイト)から発見した書類によれば、これらのアプリは、いずれWindowsやLinux、MacOSXにも対応するようだ。

グーグルが想定するのは、ウェブアプリをネイティブのフレームで包み込み、スマートフォンで起動させることで、様々なアプリストアでの販売を可能とすることだ。Phone GapのオープンソースであるApache Cordovaがこのフレームの有力候補のようだ。

グーグルはこのプロジェクトの存在を認めていないが、Chromeをプラットフォームとして考えれば、Chromeアプリをハイブリッド化することは簡単かつ論理的にたどり着く結論だ。もしChromeアプリがいまだシェアの低いグーグル独自のOSでしか起動しないのなら、魅力的なアプリとはいえなくなる。グーグルはウェブ接続アプリに対する世間の関心を高め、利用者が他のOSからChrome OSに違和感なく乗り換えることを狙っているのだ。

現状ではこのプロジェクトは正式なものではないが、グーグルは先日、Chrome開発者向けに、ChromeアプリをAndroidとiOSで起動させるためのカスタマイズとデバッグツールを2つリリースした。モバイル端末で簡単にChromeの開発とテストができる「viewport emulation」と「screencast-enabled remote debugging」というツールだ。

グーグルのパベル・フェルドマンは「Chromium Blog」でこう説明している。

アプリをデザインしている間、開発者はそれが複数のスクリーン上で正しく表示されることを確認する必要がある。DevToolsによって今、開発環境から離れることなくポピュラーなデバイスのスクリーンでの表示を一通り確認することができようになった。コンソールの引き出しのEmulation tab1からデバイスを選ぶだけで必要な全てのビューポート・プロパティが全てセットされる。また正確な結果を得られるよう、モバイルのChromeの中で使用されるものと同じモバイル・ピューポートのコードによってページを実行することができる。さらに、スクリーン解像度、タッチ・エミュレーション、デバイス・ピクセル比、ユーザー・エージェント、センサーその他多くのエミュレーション・パラメーターに関する多くのコントロールがある。

普通のユーザーにとってアプリはアプリでしかなく、ハイブリッド・アプリとネイティブアプリの違いには関心がない。あまりにバグが多くて動かないというのでなければ、ユーザーはそのアプリを必要とする限り使い続けるだろう。一方開発者にとって、アプリは単なるアプリではない。アプリがどのプラットフォームで動作するかは、普通のユーザーにとってはどうでも良いことだが、開発者にとっては大きな違いだ。グーグルはChromeアプリの成長のために、普通のユーザーと開発者の間の壁を取り払おうとしているのだ。

Pocket