PackageTrack
Sign in Get early access

app_blocker

Cross-platform app blocking plugin for Flutter. Block apps with custom block screen (Android) and Screen Time Shield (iOS). Supports scheduling and profiles.

2.2.0 237 downloads/mo #1185 most downloaded on pub.dev kaneiof/app_blocker

What this package is like to depend on

Last release 14 days ago

10 Aug 2026

Release timing varies

gaps range from 2 weeks to 4 months

Most releases are documented

notes for 12 of 17 stable releases

Nothing withdrawn

no release was ever pulled

5 months old

17 releases · first in 2026

17 releases in the last 12 months

see the full history below

Release timeline

17 releases · Mar 2026 to Aug 2026
Release Pre-release

Releases

latest 17
  1. 2.2.0 10 Aug 2026
    Release notes
    • Migrates to Built-in Kotlin. The Android build no longer applies the Kotlin Gradle Plugin itself, which is required for Android Gradle Plugin 9 and removes the "plugins that apply KGP" warning on Flutter 3.44+.
    • Updates the minimum supported SDK version to Flutter 3.44 / Dart 3.12. Earlier Flutter versions cannot supply the Kotlin toolchain this plugin now relies on, so apps on older Flutter must stay on 2.1.x.
    • Updates Android dependencies: core-ktx 1.18.0, work-runtime-ktx 2.11.2, kotlinx-coroutines-android 1.10.2, gson 2.14.0.
    • Removes the obsolete package attribute from the Android manifest, which AGP 8 replaced with the namespace build setting.
    • Fixes the iOS podspec version, which was still pinned at 2.0.0.
    • Example app: updates to AGP 9.0.1 / Kotlin 2.3.20 / Gradle 9.1.0 and aligns its iOS deployment target with the plugin's 16.0 minimum.
    Open source →
  2. 2.1.0 10 Apr 2026
    Release notes
    • One-time schedules: Added optional scheduleDate parameter to BlockSchedule for non-recurring schedules. Automatically disables after completion. Fully backward compatible with existing recurring schedules.
    • Improved validation for recurring schedules: schedules with an empty weekdays now throw an ArgumentError instead of silently doing nothing.
    Open source →
  3. 2.0.7 09 Apr 2026
    Release notes
    • Remove badges from README
    Open source →
  4. 2.0.6 09 Apr 2026
    Release notes
    • Use ^2.0.0 in README installation for forward-compatible versioning
    Open source →
  5. 2.0.5 09 Apr 2026
    Release notes
    • Update LICENSE copyright year to 2024-2026
    Open source →
  6. 2.0.4 09 Apr 2026
    Release notes
    • Fix LICENSE badge link in README (main → master)
    Open source →
  7. 2.0.3 09 Apr 2026
    Release notes
    • Update installation version in README
    Open source →
  8. 2.0.2 09 Apr 2026
    Release notes
    • Add pub.dev topics for better discoverability
    • Improve README structure with Features, Getting Started, and Additional Information sections
    • Add pub points, popularity, and likes badges
    • Add dartdoc comments to all public constants
    • Enable public_member_api_docs lint rule
    Open source →
  9. 2.0.1 05 Apr 2026
    Release notes
    • Shorten package description to meet pub.dev guidelines
    Open source →
  10. 2.0.0 05 Apr 2026
    Release notes

    ⚠️ Breaking Changes

    General:

    • getBlockedApps() now returns a list of all currently blocked app IDs, including those blocked by schedules and profiles (previously only directly blocked apps).
    • unblockAll() now also deactivates any active profile and disables all schedules (otherwise leads to inconsistent state with all apps unblocked but potentially active schedules/profiles).
    • Capability canShowOverlay renamed to canCustomizeBlockScreen in BlockerCapabilities.

    Android:

    • Replaced foreground service with AccessibilityService (better battery efficiency than polling)
    • Important: Users must now enable Settings → Accessibility → App Blocker - checkPermission() and requestPermission() correctly handle this
    • FOREGROUND_SERVICE, PACKAGE_USAGE_STATS, and SYSTEM_ALERT_WINDOW permissions no longer needed, can be removed from AndroidManifest if manually added
    • Replaced overlay window with a normal Android Activity for the block screen (needed for robust behavior with AccessibilityService-based approach) SYSTEM_ALERT_WINDOW permission no longer required
    • setOverlayConfig()/getOverlayConfig() renamed to setBlockScreenConfig()/getBlockScreenConfig(); OverlayConfig renamed to BlockScreenConfig.

    iOS:

    • Minimum version bumped to iOS 16.0
    • App token format changed for stability
      • before (indexed: "app_token_0"): same id could refer to different apps
      • now (JWT: "eyJkXR..."): stable unique identifier for each app
      • APIs stay the same but old app tokens will no longer work if stored from previous versions

    Features

    • Added getBlockScreenConfig() API
    • New events: profileActivated, profileDeactivated
    • Improved getBlockedApps() to include schedules and profiles

    Fixes

    • Fixed custom Android block screen config not being applied
    • Fixed SCHEDULE_EXACT_ALARM permission not requested
    • Fixed iOS token stability issues
    • Fixed schedules not activating when enabled during active time
    • Fixed schedules lost after app restart

    Changes

    • Improved error handling in native code
    • Clarified iOS schedule limitations in docs
    • Extended example app to demonstrate all features
    Open source →
  11. 1.0.6 31 Mar 2026
    Release notes
    • Fix installation version in README
    Open source →
  12. 1.0.5 23 Mar 2026

    Nothing published for this version

  13. 1.0.4 23 Mar 2026

    Nothing published for this version

  14. 1.0.3 23 Mar 2026

    Nothing published for this version

  15. 1.0.2 23 Mar 2026

    Nothing published for this version

  16. 1.0.1 23 Mar 2026

    Nothing published for this version

  17. 1.0.0 23 Mar 2026
    Release notes
    • Initial release
    • Cross-platform app blocking (Android overlay + iOS Screen Time Shield)
    • Permission management
    • App discovery (Android installed apps list, iOS FamilyActivityPicker)
    • Real-time blocking events via Stream
    • Customizable overlay (Android)
    • Schedule-based blocking with AlarmManager (Android) and UserDefaults (iOS)
    • Focus profiles for grouping blocked apps and schedules
    • Boot persistence (Android)
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive