Mozilla は Mozilla Labs Apps マーケットプレースの早期テスト版である Mozilla Labs Apps 開発者プレビュー をローンチした。Mozilla Labs Apps は HTML5 や CSS,JavaScript などの Web 標準を駆使して,複数のデバイス (デスクトップ,モバイル,タブレット) で動作する HTML5 アプリケーションの開発を可能にするプロジェクトだ。さらに,開発された HTML5 アプリケーションの配布を支援するため,プロジェクト自身によるマーケットプレースの運営も予定している。実際のアプリケーションマーケットプレースは 2012 年初めのローンチが計画されている。
Mozilla Labs Apps のアプリ構築では,標準的な Web 技術以外に Mozilla アプリケーションマニフェスト のメタデータを使用して,User Agent の検出とインストール,ローンチ,さらにはアプリケーションへの追加的な権限承認などを実現している。開発者が既存のウェブサイト用にアプリを作成するには,単にアプリケーションマニフェストを作成すればよい。ただし異なるデバイスで最高のユーザエクスペリエンスを提供するためには,当然ながらアプリケーションで数多くの要因を考慮する必要がある。レスポンスのよい Web 設計,それぞれのデバイスでの見栄えのよさ,オフラインキャッシングやストレージ,地理位置情報や方向情報などデバイス API 対応,といった具合だ。
アプリケーションをさまざまなデバイスで動作させるために,Mozilla はいくつかの "App Runtime" を開発した。HTML5 App Runtime は JavaScript で実装されていて,どのブラウザでも使用可能である。App Runtime for Firefox では実装に Mozilla Add-on SDK を使用して,Firefox ユーザを対象に優れたインストレーションとローンチ体験を提供する。また Android プラットフォーム上でアプリを動作させる App Runtime for Android は,PhoneGap インスタンスを組み込んだ Java アプリケーションだ。今回のプレビューには iOS のサポートが含まれていない。これも注目すべき点だろう。
Mozilla Labs のアプリケーションマニフェストと同じようなコンセプトで,W3C Widget 仕様も HTML アプリケーションのパッケージングとメタデータを標準化する。Opera はこの仕様を完全サポートしていて,http://widget.opera.com で "ウィジェットストア" を運営する。同じように Google も,Chrome Web アプリケーションマニフェストファイルからメタデータを参照する Chrome Web App を作成可能にしている。この Chrome Web App はパッケージ形式で Chrome Web Store から配布できる。
今後はどうなるのだろうか? これから数カ月間,Mozilla Labs Apps チームが開発を行うものがいくつかある。
- WebRT – OS との統合性に優れ,Firefox への依存性を持たない,クロスプラットフォームのアプリケーションランタイムである。
- WebAPI – カメラやファイルシステムアクセスなど,より多彩なデバイス API をアプリに提供する。
- Web アクティビティ – アプリケーション相互間の通信機能を実現する。
- 標準化 – アプリケーション API を標準化する。
最初は Mozilla Apps Getting Started ページを参照するのがよいだろう。3,000人の開発者限定で Mozilla Apps マーケットプレース機能をテスト可能な Developer Preview ウェブサイトは,現在閉鎖中である。再オープンに関する通知が希望ならば Apps Developer Newsletter を購読すればよい。プレビュー版の詳細に関しては hacks.moziila.org の 公式発表 を読んでほしい。Mozilla Labs Apps システムのさらに詳しい内容については, Behind the Mozilla Apps Developer Preview ブログの記事を読むとよいだろう。