Download Latest Version v0.9.0+3 - Bug Fixes source code.tar.gz (3.4 MB)
Email in envelope

Get an email when there's a new version of Flutter Workmanager

Home / v0.8.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2025-07-01 3.0 kB
v0.8.0 - Federated Plugin Architecture source code.tar.gz 2025-07-01 3.3 MB
v0.8.0 - Federated Plugin Architecture source code.zip 2025-07-01 3.4 MB
Totals: 3 Items   6.7 MB 0

🎉 Major Release - Federated Plugin Architecture

This release represents a major architectural change to the flutter_workmanager plugin, migrating to a federated plugin structure for better platform extensibility and maintainability.

🚨 Breaking Changes

Architecture Changes

  • Migrated to federated plugin architecture - Platform-specific implementations are now in separate packages:
  • workmanager_platform_interface - Shared platform interface
  • workmanager_android - Android WorkManager implementation
  • workmanager_apple - iOS BGTaskScheduler implementation (renamed from workmanager_ios)
  • workmanager - Main package with unified API

API Changes

  • Enum values changed from snake_case to camelCase for Dart conventions:
  • NetworkType: not_requirednotRequired, not_roamingnotRoaming
  • OutOfQuotaPolicy: run_as_non_expedited_work_requestrunAsNonExpeditedWorkRequest, drop_work_requestdropWorkRequest
  • Removed JSON serialization for inputData - Now uses native Map transfer for better performance and type safety
  • Android: Stricter payload type validation - only primitive types and lists of strings supported

✨ New Features

  • Android: Added isScheduledByUniqueName method to check if a periodic task is scheduled
  • Foundation for future macOS support using NSBackgroundActivityScheduler
  • Added comprehensive integration tests for data transfer and retry functionality

🐛 Bug Fixes

  • iOS: Fixed initialDelaySeconds parameter handling - was previously ignored
  • iOS: Fixed swapped constraints bug for requiresNetworkConnectivity and requiresExternalPower (#562)
  • iOS: Fixed compilation errors with Map handling
  • Android: Fixed NullPointerException when isInDebugMode was not properly initialized
  • Android: Fixed v2 embedding import in BackgroundWorker (#595)
  • Android: Fixed array/list handling in payload processing
  • Fixed input data type handling across platforms - now properly supports all primitive types and lists

📈 Improvements

  • Updated to Flutter 3.32 and flutter_lints 6.0.0
  • Android: Updated target SDK to 35
  • iOS: Added Privacy Manifest for App Store compliance (#555)
  • iOS: Replaced print statements with proper os_log for better logging
  • iOS: printScheduledTasks now returns String instead of void (#585)
  • Improved CI/CD with Android emulator caching for faster builds
  • Better error handling and type safety throughout the codebase

🙏 Contributors

Special thanks to @thegriffen, @jogapps, @navaronbracke, @yarith28, and all contributors who helped make this release possible!

📦 Published Packages

Source: README.md, updated 2025-07-01