Buscar pacotes, repositórios e categorias de apps

Detalhes do pacotev0.4.0

service_worker

Vinculações JavaScript para a API do Service Worker.

Web
Downloads em 30 dias
4,3 mil
Curtidas
26
Pontos Pub
80

Instalar pacote

flutter pub add service_worker

Visão geral do pacote

Orientação gerada a partir de informações públicas. Apenas para referência.

O pacote service_worker fornece vinculações JavaScript para a API de Service Worker em aplicativos web do Flutter. Ele permite que desenvolvedores aproveitem os workers de serviço para funcionalidades avançadas offline, sincronização em segundo plano e notificações por push. Ao integrar-se ao ciclo de vida do worker de serviço do navegador, este pacote permite que aplicativos Flutter armazenem em cache ativos, interceptem solicitações de rede e gerenciem persistência de dados mesmo quando offline. É especialmente útil para criar aplicativos web progressivos (PWAs) que exigem funcionalidade offline robusta e melhor desempenho por meio de estratégias de cache.

Casos de uso

  • Construindo aplicativos web com foco em offline
  • Implementando notificações por push
  • Armazenando em cache ativos para tempos de carregamento mais rápidos
  • Gerenciando operações de sincronização em segundo plano
  • Melhorando o desempenho do PWA
  • Interceptando e modificando solicitações de rede

Principais recursos

  • Interoperabilidade do JavaScript com a API de Service Worker
  • Suporte ao armazenamento em cache de ativos offline
  • integração de sincronização em segundo plano
  • Tratamento de notificação por push
  • ciclo de vida do trabalhador de serviço orientado por eventos
  • Compatibilidade exclusiva para web

Indicado para

  • Desenvolvedores Flutter voltados para plataformas da web
  • Construtores de PWA que exigem suporte offline
  • Aplicativos que precisam de sincronização em segundo plano ou notificações por push
  • Desenvolvedores implementando estratégias personalizadas de cache
  • Projetos focados na otimização de desempenho da web

Considerações

  • Limitado apenas à plataforma da web
  • Requer conhecimento dos conceitos de serviço worker do JavaScript
  • Pode ser necessário configuração adicional para casos de uso complexos
  • Não compatível com plataformas móveis ou desktop
  • Depende do suporte do navegador para trabalhadores de serviço

README original

Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.

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.

Categorias

Dependências

Lista de dependências 1 itens

  • js>=0.6.1 <2.0.0

Repositório-fonte

Projetos que usam este pacote