Pakete, Repositories und App-Kategorien suchen

Paketdetailsv0.9.11

workmanager_apple

Apple-Plattform-(iOS/macOS)-Implementierung des workmanager-Plugins.

iOSmacOS
30-Tage-Downloads
279.000
Likes
4
Pub-Punkte
150

Paket installieren

flutter pub add workmanager_apple

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

Das workmanager_apple-Paket bietet Apple-Plattformunterstützung (iOS und macOS) für den workmanager-Plugin, wodurch Hintergrundaufgaben in Flutter-Anwendungen möglich werden. Es ermöglicht Entwicklern die Planung von periodischen oder einmaligen Aufgaben, die auch dann ausgeführt werden, wenn die App beendet wurde, was eine zuverlässige Hintergrundverarbeitung auf Apple-Geräten sicherstellt. Diese Implementierung integriert sich nahtlos in die System-APIs von iOS und macOS, um die Hintergrundausführung effizient zu verwalten, während Plattform-spezifische Einschränkungen und Energiesparfunktionen respektiert werden.

Anwendungsfälle

  • Planung der periodischen Daten-Synchronisierung
  • Hintergrundortungsaktualisierungen werden ausgeführt
  • Verzögerte Benachrichtigungen ausführen
  • Ausführliche Datenverarbeitung
  • Die Kontinuität der Hintergrundaufgabe aufrechterhalten

Hauptmerkmale

  • Plattformspezifische Hintergrundaufgabenverwaltung von Apple
  • Integration mit iOS/macOS-System-APIs
  • Unterstützung für periodische und einmalige Aufgaben
  • energieeffiziente Hintergrundausführung
  • Nahtlose Integration mit Workmanager Core

Geeignet für

  • Flutter-Apps, die auf iOS eine Hintergrundverarbeitung erfordern
  • Entwickler, die macOS mit Hintergrundanforderungen ansprechen
  • Apps, die eine zuverlässige Hintergrundaufgabenplanung benötigen
  • Projekte, die das workmanager-Plugin über Plattformen hinweg verwenden
  • Anwendungen mit Daten-Synchronisierungs- oder Überwachungsanforderungen

Hinweise

  • Erfordert die korrekte Konfiguration in den Xcode-Projekteinstellungen
  • Eingeschränkte Hintergrundausführungszeit unter iOS
  • Hintergrundmodi müssen in den App-Funktionen aktiviert werden
  • Nicht kompatibel mit allen Hintergrundaufgabentypen
  • Für bestimmte Vorgänge kann eine Benutzerberechtigung erforderlich sein

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

Flutter Workmanager

pub package pub points likes popularity GitHub Workflow Status license

Execute Dart code in the background, even when your app is closed (Android and iOS). On macOS, background tasks run while the app is running or backgrounded and the Mac is awake. Perfect for data sync, file uploads, and periodic maintenance tasks.

⚠️ Experimental web support now exists via workmanager_web (Service Worker + Web Worker based background execution). See the Web (experimental) page and the package README for honest limitations and how to test it in Chrome.

📖 Documentation

Get started with background tasks in Flutter:

→ Quick Start Guide - Installation and setup

→ API Documentation - Complete Dart API reference

→ Debugging Guide - Troubleshooting help

→ Troubleshooting Guide - Why tasks stop after app close (OEM battery optimization, constraints, verification)

🎯 Use Cases

Background tasks are perfect for:

  • Sync data from API - Keep your app's data fresh
  • Upload files in background - Reliable file uploads
  • Clean up old data - Remove old files and cache
  • Fetch notifications - Check for new messages
  • Database maintenance - Optimize and clean databases

⏱ Long-Running Tasks (Android)

For work that takes longer than the regular background execution window (bulk uploads/downloads, ML processing), Android tasks can run as a foreground service with a persistent notification. Pass a foregroundServiceConfig to registerOneOffTask or registerPeriodicTask:

await Workmanager().registerOneOffTask(
  "upload-task",
  "upload_files",
  foregroundServiceConfig: ForegroundServiceConfig(
    notificationTitle: "Uploading files",
    notificationText: "Your files are being uploaded",
  ),
);

See the Quick Start guide for details and platform caveats.

🛑 Cancelling Running Work (Android)

cancelByUniqueName, cancelByTag and cancelAll stop the WorkManager worker immediately, but the Dart callback that is currently running keeps executing unless it reacts to the stop. Pass an onTaskStopped handler to executeTask inside your callbackDispatcher to be notified when a running task is stopped before it finishes:

@pragma('vm:entry-point')
void callbackDispatcher() {
  Workmanager().executeTask(
    (taskName, inputData) async {
      return true;
    },
    onTaskStopped: (taskName, stopReason) async {
      // Mark the task as cancelled / persist state, then return promptly.
    },
  );
}

The handler receives the task name and the WorkManager stop reason (cancelledByApp, timeout, preempt, ...); on Android < 12 the reason is StopReason.unknown. Android-only — iOS has no way to stop a running task. See the Customization guide for details.

🐛 Issues & Support

🚀 Example App

See the example folder for a complete working demo with all task types and platform configurations.

Kategorien

Abhängigkeiten

Abhängigkeiten 1 Einträge

Quell-Repository

Projekte, die dieses Paket verwenden

Noch keine Daten verfügbar.

Ranglisten