この翻訳は不完全です。英語から この記事を翻訳 してください。

この文書は翻訳中です。他国語のままの部分などがあるのはその為です。
是非お気軽に MDN に登録して翻訳に参加し、私たちの手助けをして下さい!

デスクトップ版Firefoxのユーザーはフリーのマーケットプレイスアプリを'通常'のWindowsアプリ・Mac/Linuxアプリとしてインストールできます。これらのアプリは、デスクトップ版Webランタイム上で動作し、デスクトップ版Firefoxの機能を使ってインストールしています。Firefoxマーケットプレイス以外でもこの機能を使う事はできます。

デスクトップの Open Web Appsとは?

デスクトップのOpen Web AppsはWindows/Mac/Linuxコンピューターユーザーマーケットプレイスアプリをインストールできるようにしています。一度インストールされたアプリは、通常のデスクトップアプリとして起動することが出来ます。
アプリはデスクトップ版Firefoxに含まれるデスクトップ版Webランタイム上で実行されます。

デスクトップのOpen Web Apps開発時には、デスクトップ開発知識や、特殊な開発ステップ、'ネイティブ'デスクトップアプリの配信の知識などは不要です。

Note: デスクトップのOpen Web Appsは、デスクトップ版Firefox 29以降でサポートしています。

デスクトップ版Webランタイムはデスクトップの機能(IndexedDB, Geolocation, Battery statusなど。)にアクセスするための12個のAPIをサポートしています。
APIの詳細についはcomplete list of supported APIs を御覧ください。"Available"列の"D"セルがデスクトップ版Webランタイムでの各APIの対応状況を示しています。緑色のセルは全機能をサポートしてます。マウスをかざすとさらなる情報が表示されます。

近い将来、デスクトップ版WebランタイムでサポートするAPIをは追加されていきます。

Note: アプリがレスポンシブデザインで作られていない場合、Firefox OSとデスクトップコンピュータのように、大幅に異なるプラットフォームでは狙ったどおりに表示されません。これは、Firefox OS端末と違ってデスクトップコンピュータユーザの解像度(DPI)やサイズが異なるためです。レスポンシブデザインを考慮した設計をするように常に心がけでください。レスポンシブデザインに関する詳しい情報はアプリセンターのデザインセクションを御覧ください。

Firefoxマーケットプレイスからデスクトップ版Open Web Appsを利用する

このセクションではデスクトップ版Open Web Appsの利用方法、Firefoxマーケットプレイスへ与える効果、アプリアップデートの情報を提供します。

アプリの提出

Firefoxマーケットプレイスにアプリを提出する際、デスクトップ版Firefoxを選択することが可能です。

アプリのレビュー

アプリのレビュー時にレビューアは、Firefoxマーケットプレイスのレビューセクションからアプリをインストールします。デスクトップからレビューする際、デスクトップ版Firefoxはレビューアのコンピュータへアプリをインストールします。これにより、通常のアプリ同様完全な動作をレビューする事が可能になります。

アプリのインストール

Firefoxマーケットプレイスからユーザーがアプリを選択すると以下の動作をします。

  1. Firefoxマーケットプレイスでは通常アプリの詳細と無料ボタンが表示されます。
  2. ユーザーが無料ボタンをクリックしたら、インストール確認用のFirefox標準ダイアログが表示されます。ダイアログには特権が必要なアプリの場合は必要となるパーミッションのリストが表示されます。このダイアログにはユーザーが懸念していることに関する説明も含まれます。
  3. ユーザーがインストール継続をするためにインストールをクリックすると、Apps.install / Apps.installPackageが意図されたとおりに実行され、デスクトップ版FirefoxはFirefoxマーケットプレイスからアプリの詳細を要求します。パッケージがタアプリノ場合はアプリのZipファイルをダウンロードします(これはアプリがホスト型か、パッケージ型かに依存します)。
    デスクトップ版FirefoxはデスクトップOSにアプリをインストールします。これによって、オフラインでもアプリを利用することが可能になります。(もしAppCacheの記載があれば、パッケージ型の場合はZipを、ホスト型の場合はアプリのアセットをインストールします。)

一度アプリがインストールされると、通常のデスクトップOSのアプリと同じように表示されます。起動と削除方法も他のデスクトップアプリと変わりはありません。

アプリのアップデート

デスクトップ版Webランタイムではアップデート可能なアプリをユーザーへ通知する仕組みを搭載しています。

もし、ホスト型アプリであれば、いつでもサーバー上のコンテンツを変更すればユーザーの次回起動時に変更が反映されて動作します。

他の全ての変更についてはFirefoxマーケットプレイスで新しいバージョンを追加する必要があります。

  • ホスト型アプリの場合、更新するマニフェストファイルを含むサーバー上のアプリへのリンク
  • パッケージ型アプリの場合、更新するマニフェストとコンテンツが含まれるzipファイル

アプリが動作中の場合、デスクトップ版Webランタイムは毎日アプリのマニフェストファイルのバージョン番号のチェックをします。もし変更されている場合はユーザーに対してアップデートが入手できることを通知します。ユーザーは新しいバージョンをインストールする事を選択する事ができます。

他のロケーションからデスクトップ版Open Web Apps を利用する

自身で構築したマーケットプレイスまたはサーバーにホスト型またはパッケージ型のOpen Web Apps を提供する事が可能であれば、そのケースではデスクトップ版 Open Web Appsを利用して自動インストールが可能です。Open Web Apps のオリジナルのロケーションで、新しいバージョンを検知した場合、Firefoxはアプリのアップデートをハンドリングします。

デスクトップ版Open Web Apps のアプリインストール仕様

このセクションではFirefox がどのように、デスクトップ版Open Web Apps をインストールするかを説明します。

  1. ユーザーがアプリのインストールを選択した場合、上述した通り、デスクトップ版Firefox はホストしているサーバーに対し、アプリのマニフェストファイルやアイコン画像をを要求します。(Firefox Marketplace またはアプリをホストしているサーバーに対して要求)
    • ホスト型アプリの場合はメインのマニフェストファイル
    • パッケージ型アプリの場合は、ミニマニフェストファイル
  2. パッケージ型アプリでは、ホストしているサーバーに対して デスクトップ版Firefox はアプリのZIp ファイルを要求します。
  3. デスクトップ版Firefoxはアプリのインストール処理をします。
    • ホスト型アプリの場合、Windows / Mac / Linux で実行可能なURL にラッピングし、デスクトップコンピュータ上に配置する
    • パッケージ型アプリの場合、Windows / Mac / Linux で実行可能なアプリのコンテンツをラッピングし、デスクトップコンピュータ上に配置する

以下のフロー図は、デスクトップ版Open Web Appsを利用したアプリのインストールワークフローを示したものです。

Open Web Apps for Desktop Sequence Diagram

FAQ

ここでは、デスクトップ版Open Web Appsに関してよく聞かれる質問をまとめています。

アプリ内課金と有料アプリの機能はいつから提供されますか?

この機能の実装時期は計画中です。デスクトップ版Open Web Appsに実装された場合信頼されたUIへのアクセスや、mozPay、そしてすべてのアプリ内課金支払いプロセスが提供されます。

デスクトップで動作させた場合のデバッグはどうすれば良いですか?

コンソール( 他のリモート開発者ツール )にアクセスして、-debug フラグとオプション定義されたポート番号を使ってコマンドラインからアプリをスタートする事が可能です。
Macの例では、Mykzilla テストアプリを以下のように開始します。

> /Applications/Mykzilla.app/Contents/MacOS/webapprt -debug 6000

そして、Firefox の開発ツールメニューの接続... をクリックして、localhostの指定したポートに接続します。その後、Firefox の接続をクリックして、アプリへ戻り接続状況を確認してください。Firefoxに戻り、"tab"(たとえばアプリの開いているウィンドウ)を選択するかWeb ランタイムのChrome コードをデバッグするための"メインプロセス"を選択します。

Firefox のリモート開発ツールのコピーは新しいウィンドウとして開くと、"tab"に接続できます。

ドキュメントのタグと貢献者

 このページの貢献者: hackame, mantaroh
 最終更新者: hackame,