# flutter_local_notifications_platform_interface 12.2.0

A common platform interface for the flutter_local_notifications plugin.




## Installing
```
export PUB_HOSTED_URL=https://pub.mirror.p-hatan.com
flutter pub add 'flutter_local_notifications_platform_interface:12.2.0'
```
Published: 2026-08-08T07:36:42.213722Z
Expected archive SHA-256: 43c3761d916c9bd3d5c7ebbc44d82f4990329840c0c5d62ad5260cc1b5d399bd

Available in cache; verification: upstream_checksum
## Direct dependencies
- plugin_platform_interface: ^2.1.8
- timezone: ^0.11.0

## Package README (untrusted upstream documentation)
# flutter_local_notifications_platform_interface

A common platform interface for the [`flutter_local_notifications`](https://pub.dev/packages/flutter_local_notifications) plugin.

## Usage

Platform-specific implementations should extend from the `FlutterLocalNotificationsPlatform` class. Upon registering the plugin, the default implementation `FlutterLocalNotificationsPlatform` can be set by calling `FlutterLocalNotificationsPlatform.instance = MyFlutterLocalNotificationsPlatform()` where `MyFlutterLocalNotificationsPlatform()` represents the platform-specific implementation.

## Changelog
## [12.2.0]

* Added `openAppNotificationSettings()` method. When implemented, this opens the system settings UI where the user can manage notification permissions for the app. Thanks to the PR from [hamadcc](https://github.com/hamadcc)

## [12.1.0]

* Added `NotificationResponseType.notificationDismissed` enum value to support handling when a notification has been dismissed. Thanks to the PR from [Vasily Laushkin](https://github.com/vlaushkin)

## [12.0.1]

* Fixed API docs of `NotificationResponseType.selectedNotificationAction`. Thanks to the PR from [fush1m1](https://github.com/Fush1m1)

## [12.0.0]

* Added `zonedScheduled()` to the platform interface and moved `DateTimeComponents` from main plugin to platform interface. Thanks to the PR from [Gaurav Yadav](https://github.com/Gaurav-CareMonitor)

## [11.0.0]

* **Breaking change** bumped minimum Flutter SDK requirement to 3.38.1 and Dart SDK requirement to 3.10.0

## [10.0.0]

* **Breaking change** bumped minimum Flutter SDK requirement to 3.32.0 and Dart SDK requirement to 3.8.0
* **Breaking changes** the positional parameters in the following methods have now been converted to named parameters
  * `show()`
  * `periodicallyShow()`
  * `periodicallyShowWithDuration()`
  * `cancel()`
* Added `flutter_lints` to apply linter rules

## [9.1.0]

* Added `cancelAllPendingNotifications()` method for cancelling all pending notifications that have been scheduled. Thanks to the PR from [Kwon Tae Hyung](https://github.com/TaeBbong)

## [9.0.0]

*  **Breaking change** bumped minimum Flutter SDK requirement to 3.22.0 and Dart SDK requirement to 3.4.0
*  Bumped minimum `plugin_platform_interface` version to 2.1.8
* Added `data` property to `NotificationResponse` class to support notification actions on Windows. Thanks to the PR from [Levi Lesches](https://github.com/Levi-Lesches)

## [8.0.0]

* **Breaking change** Bumped minimum Flutter SDK requirement to 3.13

## [7.2.0]

* Added `periodicallyShowWithDuration()` and corresponding `validateRepeatDurationInterval()` helper method to ensure duration is at least a minute

## [7.1.0]

* [Android] `bigText` has added to `ActiveNotification` that allows getting information about the longer text associated with a notification displayed using the big text style. Thanks to the PR from [vulpeep](https://github.com/vulpeep)

## [7.0.0+1]

* Bumped maximum Dart SDK constraint

## [7.0.0]

* **Breaking change** the `id` property of the `ActiveNotification` class is now nullable to help indicate that the notification may not have been created by the plugin e.g. it was from Firebase Cloud Messaging. Thanks to the PR from [frankvollebregt](https://github.com/frankvollebregt)
* Updated minimum Flutter SDK constraint to 3.0 and minimum Dart SDK constraint to 2.17 to align with versions used by actual plugin implementation
* Bumped `mockito` dev dependency

## [6.0.0]

* **Breaking change** the parameters of `ActiveNotification`'s constructor are now are named instead of positional
* **Breaking change** removed `SelectNotificationCallback` typedefs. The `DidReceiveNotificationResponseCallback` and `DidReceiveBackgroundNotificationResponseCallback` are the new typedefs for notification callbacks that run on the main isolate and background isolate respectively. Both of these pass an instance of the `NotificationResponse` class
* **Breaking change** the `NotificationAppLaunchDetails` has been updated to contain an instance `NotificationResponse` class with the `payload` belonging to the `NotificationResponse` class. This is to allow knowing more details about what caused the app to launch e.g. if a notification action was used to do so
* [Android] `groupKey` has been added to `ActiveNotification`. This was previously available in version `9.1.0` of the `flutter_local_notifications` plugin but then removed as it should've been part of a major release instead of a minor one
* [Android] `tag` has been added to `ActiveNotification`. This was available in version `9.4.0` of the `flutter_local_notifications` plugin but has been brought here since `ActiveNotification` is now part of this package's APIs

## [5.0.0]

* **Breaking change** the `SelectNotificationCallback` typedef now maps to a function that returns `void` instead of a `Future<dynamic>`. This change was done to better communicate the plugin doesn't actually await any asynchronous computation and is similar to how button pressed callbacks work for Flutter where they are typically use [`VoidCallback`](https://api.flutter.dev/flutter/dart-ui/VoidCallback.html)

## [4.0.1]

* Moved the `SelectNotificationCallback` typedef and `validateId` method previously defined in the plugin to the platform interface. This is so they could be reused by platform implementations

## [4.0.0]

* Updated Flutter SDK constraint
* Updated Dart SDK constraint
* Bumped mockito dependency

## [3.0.0]

* Migrated to null safety

## [2.0.0+1]

* Added more API docs

## [2.0.0]

* **BREAKING CHANGE** renamed `RepeatInterval` enum values to use lower camel casing
* Bump `plugin_platform_interface` dependency

## [1.0.1]

* Add `pendingNotificationRequests()`

## [1.0.0+1]

* Fix link to repo in pubspec
* Update readme

## [1.0.0]

* Initial release of platform interface







 
