注: クイックスタートの項目は、新しい、より集中的なクイックスタート記事 として更新され、従来のクイックスタート記事をすべて置き換えるものとなりました。この記事がより有益な情報源となり、古い一連の記事よりもより素早い学習体験を提供することを期待しています。
あなたが Web 開発者で、インストール可能な Open Web App へ変換したい Web サイトや Web アプリケーションを持っているなら、必要な作業は「技術的には」ごくわずかです。この記事では、その最小要件と、Open Web Apps について理解するためのアイデア、標準的な Web サイトとの違いを解説します。
最小要件はこれだけです。
- アプリマニフェスト を作成します。
- そのアプリマニフェストファイルに
.webapp
拡張子を付けて公開します。Content-Type
ヘッダにapplication/x-web-app-manifest+json
を設定します。 - あなたのサイトかアプリストアで (あるいはその両方で) アプリを公開します。自分のサイトで配布する場合は、ユーザのブラウザ内で アプリのインストールや更新を管理するためのコードをサイトに追加 する必要があります。
追加機能
「哲学的には」インストール可能な Open Web Apps という考えは、単にマニフェストをサイトへ追加することよりもはるかに多くの意味を持っています。Web 標準技術は本格的なアプリケーションプラットフォームとして表示でき、ユーザインタフェースの描画とコードの解釈にたまたまブラウザのエンジンを使用し、サーバとの通信にたまたま Web プロトコルを使用しているに過ぎません。Mozilla は様々なプラットフォームに対して「Web ランタイム」実行環境を提供しており、アプリはブラウザのウィンドウフレームではなく独自のウィンドウ内で実行できます。
Web サイトを「アプリ化」するには、多くのアプリケーション固有の質問について考える必要があります。
- 自分のアプリは Web に接続していないときも動作すべきか?
- 自分のアプリがどのようにデータを使用し、どのようにそれを保存するか?
- 自分のアプリのパフォーマンスは、Web Workers や WebSockets といった先進的なプラットフォーム機能のメリットを受けられるか?
- 他にももっと
インストール可能なアプリの機能を最大限活用したい場合は、できることがたくさんあります。例えば、
- レスポンシブ Web デザイン を使って、すべての端末上で表示や動作を最適化する。
- アプリに課金する。
- ユーザを特定する 方法を提供する。
- オフラインキャッシュ を使って、端末がインターネットに接続していない場合もアプリを使えるようにする。
- IndexedDB か localStorage を使ってデータをローカルに保存する。
- ネイティブアプリのように アプリを起動する (アイコンをデスクトップやモバイル端末のホーム画面に表示する)
- 位置情報通知機能 (ジオロケーション) や 傾き検知 (加速度センサー) などのデバイス API を使ってハードウェアと連携する。
- ユーザにフィードバック手段を提供する。Mozilla が行ったユーザ調査では、ユーザはアプリ開発者にフィードバックを提供したいと考えており、それを実際に受け取る人間がいることを確かめたいとも考えています。また、提案をしたい、あるいは問題があったときにサポートを受けたいといった要望もあります。問題があり、そのサポートを受けられないときはアプリを使うのをやめてしまう可能性があります。
便利な技術
インストール可能なアプリの開発に役立つと思われるいくつかの Web 技術を挙げます。ここに載っているもので Open Web Apps 固有のものはひとつもないことに注目してください。