BackgroundFetchManager

Experimental: これは実験的な機能です。
本番で使用する前にブラウザー互換性一覧表をチェックしてください。

Background Fetch APIBackgroundFetchManager インターフェイスは、バックグラウンドフェッチ ID をキー、 BackgroundFetchRegistration オブジェクトを値とするマップです。

プロパティ

なし。

メソッド

fetch() Experimental

引数に与えられた配列( URL や Request オブジェクトで構成される) に対して、BackgroundFetchRegistration オブジェクトで解決される Promise を返します。

get() Experimental

引数に与えられた id に紐づく BackgroundFetchRegistration で解決される Promise を返します。 id が見つからない場合は undefined を返します。

getIds() Experimental

登録済みのすべてのバックグラウンドフェッチの ID を返します。

下記の例は、 ServiceWorkerRegistration オブジェクトから BackgroundFetchManager のインスタンスを取得し、バックグラウンドで動画をダウンロードするために fetch() メソッドを呼び出しています。

navigator.serviceWorker.ready.then(async (swReg) => {
  const bgFetch = await swReg.backgroundFetch.fetch(
    "my-fetch",
    ["/ep-5.mp3", "ep-5-artwork.jpg"],
    {
      title: "Episode 5: Interesting things.",
      icons: [
        {
          sizes: "300x300",
          src: "/ep-5-icon.png",
          type: "image/png",
        },
      ],
      downloadTotal: 60 * 1024 * 1024,
    }
  );
});

仕様書

Specification
Background Fetch
# background-fetch-manager

ブラウザーの互換性

BCD tables only load in the browser