パッケージ、リポジトリ、アプリカテゴリを検索

パッケージ詳細v0.4.0

service_worker

Service Worker API 用の JavaScript バインディング。

Web
30日間ダウンロード
4320
いいね数
26
Pub ポイント
80

パッケージをインストール

flutter pub add service_worker

パッケージ概要

公開情報に基づく選定ガイドです。参考としてご利用ください。

service_worker パッケージは、Flutter Web アプリケーションにおける Service Worker API に対する JavaScript バインディングを提供します。これにより、開発者は高度なオフライン機能、バックグラウンド同期、プッシュ通知の実装にサービスワーカーを利用できます。ブラウザのサービスワーカーのライフサイクルと統合することで、このパッケージは Flutter アプリがアセットをキャッシュし、ネットワークリクエストをインターセプトし、オフライン時でもデータの永続化を管理できるようにします。キャッシュ戦略を通じて堅牢なオフライン機能とパフォーマンス向上を必要とするプログレッシブ・ウェブ・アプリ(PWA)を開発する場合に特に役立ちます。

用途

  • オフライン優先のWebアプリケーションの構築
  • プッシュ通知の実装
  • より迅速な読み込み時間を実現するためのアセットのキャッシュ
  • バックグラウンド同期操作の管理
  • PWAパフォーマンスの向上
  • ネットワークリクエストのインターセプトと変更

主な機能

  • JavaScript と Service Worker API の相互運用性
  • オフラインアセットキャッシングのサポート
  • バックグラウンド同期の統合
  • プッシュ通知の処理
  • イベント駆動型のサービスワーカーのライフサイクル
  • Web専用の互換性

適している対象

  • Web プラットフォームをターゲットとする Flutter 開発者
  • オフライン対応を必要とするPWAビルダー
  • バックグラウンド同期またはプッシュ通知を必要とするアプリ
  • カスタムキャッシング戦略を実装する開発者
  • Webパフォーマンス最適化に焦点を当てたプロジェクト

注意事項

  • ウェブプラットフォームのみに制限
  • JavaScript サービスワーカーの概念を理解する必要がある
  • 複雑な使用ケースには追加の構成が必要になる場合があります
  • モバイルまたはデスクトッププラットフォームと互換性がありません
  • ブラウザのサービスワーカー対応に依存します

元の README

関連するソースリポジトリの README 原文のスナップショットです。最新の内容はリポジトリをご覧ください。

Service Worker API for Dart

Dart-y wrappers for the ServiceWorker APIs.

Warning: the API is experimental, and subject to change.

Service Workers

A service worker is an event-driven worker registered against an origin and a path. It takes the form of a JavaScript file that can control the web page/site it is associated with, intercepting and modifying navigation and resource requests, and caching resources in a very granular fashion to give you complete control over how your app behaves in certain situations (the most obvious one being when the network is not available.)

A service worker is run in a worker context: it therefore has no DOM access, and runs on a different thread to the main JavaScript that powers your app, so it is not blocking. It is designed to be fully async; as a consequence, APIs such as synchronous XHR and localStorage can't be used inside a service worker.

Quickstart

Register the Service Worker from your application script, like in example/web/main.dart:

import 'package:service_worker/window.dart' as sw;

void main() {
  if (sw.isSupported) {
    sw.register('sw.dart.js');
  } else {
    print('ServiceWorkers are not supported.');
  }
}

Write the Service Worker in a separate script, like in example/web/sw.dart:

import 'package:service_worker/service_worker.dart';

void main(List<String> args) {
  onInstall.listen((event) {
    print('ServiceWorker installed.');
  });
}

Limitation

You need to force dart2js compilation for service worker to work during debug mode. See build.yaml in the example folder.

カテゴリー

依存関係

依存関係一覧 1 件

  • js>=0.6.1 <2.0.0

ソースリポジトリ

このパッケージを使用しているプロジェクト