FF と Chrome の両方が、アプリ マニフェストとサービス ワーカーを使用してプログレッシブ Web アプリのサポートを開始しました。
マニフェストを作成する際に留意すべき主な違いは何ですか (または、同じマニフェスト ファイルを両方で使用できます)。
また、ホストされた Web アプリ (パッケージ化されたものではない) の場合、ユーザーにインストールさせるプロセスにどのような違いがありますか?
FF と Chrome の両方が、アプリ マニフェストとサービス ワーカーを使用してプログレッシブ Web アプリのサポートを開始しました。
マニフェストを作成する際に留意すべき主な違いは何ですか (または、同じマニフェスト ファイルを両方で使用できます)。
また、ホストされた Web アプリ (パッケージ化されたものではない) の場合、ユーザーにインストールさせるプロセスにどのような違いがありますか?
この質問には多くのことが起こっています。いくつかの歴史を提供し、OPが尋ねる可能性のあるいくつかの質問に答えることで、すべてを整理しようとします.
バックグラウンド
パッケージ化されたアプリ
Chrome、Firefox、Opera、およびその他の多くのプラットフォームには、さまざまな時期に、HTML/JS/CSS コンテンツを実行するが Web 上には存在しない「パッケージ化された」アプリケーション プラットフォームがありました。これらは通常、アプリケーションを配布するために、zip のようなパッケージングとディレクトリ構造 (および場合によっては署名) と組み合わせたある種のマニフェスト ファイルを使用します。これらのアプリケーションは通常、Same Origin Policy に参加していないか、Web コンテンツと同じ制約と機能で実行されていません。多くの場合、これらのパッケージは独自のストアや機能機能、および「プレーンな古い Web コンテンツ」ではまだ利用できない API を介して提供されます。
これらのアプリケーションのマニフェスト形式 (少なくともChrome パッケージ アプリとFirefox パッケージ アプリの場合)は、コンテンツとオプションが標準化されていない JSON ファイルです。
ホストされたアプリ
一部のシステムは、独自のパッケージ化されたアプリケーション システムに提供される追加の機能を、アプリケーションの「実際の」Web ベースのホスティングと融合させて、「ホストされたアプリケーション」を作成しています。これらにはさまざまな種類がありますが、TL;DR は、 JSON ベースの独自のマニフェスト ファイルも特徴とする傾向があるということです。たとえば、Chrome Hosted Apps、Firefox Hosted Apps、およびWindows 10 Hosted Appsのドキュメントを参照してください。
繰り返しますが、これらのシステムは、問題のコンテンツが「実際の Web」から来ているにもかかわらず、独自仕様で、非標準であり、相互運用性がありません (パッケージ化されたアプリのいとことは異なります)。
プログレッシブ Web アプリ
プログレッシブ Web アプリは、標準化過程のWeb アプリ マニフェスト形式に基づいたマニフェスト ファイルをたまたま指し示す単なる「昔ながらの Web コンテンツ」であるという点で、パッケージ アプリとホスト アプリの両方とは異なります。
この形式は、Chrome が検出して「ホーム画面に追加」動作をトリガーするために使用するものであり、Opera が現在ホーム画面に何かを手動で追加するときに (そして将来、Opera がプロンプトを表示するときに) 使用するものです。
Mozilla は、この形式のサポートを表明しており、同社のエンジニアは標準の設計と進化に深く関わってきました。私は、これがプロプライエタリではなく、標準のマニフェストに基づく UI のサポートに発展することを楽観視しています。
Mozilla はまた、今後数か月でサービス ワーカーのサポートを出荷する予定です。これにより、Chrome、Opera、および FF 間の相互運用可能な「インストール」動作の準備が整います。エキサイティングな時代。