awesome_notifications
A complete solution to create Local and Push Notifications, customizing buttons, images, sounds, emoticons and applying many different layouts for Flutter apps.
0.12.1
60K downloads/mo
#1369 most downloaded on pub.dev
rafaelsetragni/awesome_notifications
What this package is like to depend on
Last release 1 months ago
01 Jul 2026
Release timing varies
gaps range from 8 days to 12 months
Rarely documented
notes for 13 of 76 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
95 releases · first in 2020
3 releases in the last 12 months
see the full history below
Release timeline
95 releases · Aug 2020 to Jul 2026Releases
latest 60 of 95-
0.12.101 Jul 2026 -
0.12.017 Jun 2026Release notes
Open source →Added
- Swift Package Manager support (iOS & macOS): The plugin now ships a
Package.swiftand can be installed through Swift Package Manager, while keeping CocoaPods support during the transition. This prepares the plugin for Flutter's migration away from CocoaPods, ahead of Firebase ending CocoaPods publishing in October 2026.
Changed
- Pure-Swift iOS plugin: Removed the Objective-C registrant shim; the plugin is now registered directly from
SwiftAwesomeNotificationsPlugin, and the podspec defines its own module. - Android core moved to Maven Central:
me.carda:AndroidAwnCoreis now published on Maven Central instead of JitPack; the JitPack repository was removed and the dependency resolves throughmavenCentral(). - Requires IosAwnCore and AndroidAwnCore 0.12.0.
- Swift Package Manager support (iOS & macOS): The plugin now ships a
-
0.11.013 Feb 2026Release notes
Open source →Added
- 6 new foreground service types: Added
health,remoteMessaging,shortService,specialUse,systemExempted(API 34) andmediaProcessing(API 35) toForegroundServiceType. - Foreground service timeout handling:
ForegroundServicenow implementsonTimeout(int)(API 34) andonTimeout(int, int)(API 35) to gracefully stop services that exceed their time limits, preventing ANRs andRemoteServiceException.
Fixed
- Off-by-one bug in
ForegroundServiceType.getSafeEnum(): Fixed character matching wheremediaPlaybackandmediaProjectionwere incorrectly resolved asmanifest. - Conflicting
compileSdk 34: Removed duplicatecompileSdkinsidedefaultConfigthat shadowed the root-levelcompileSdkVersion = 36. - Migrated annotation imports: Replaced
javax.annotationandorg.checkerframeworkwithandroidx.annotationacross 17 files to fix missing imports after dependency updates.
Breaking changes
- iOS minimum deployment target raised to 15.0: The minimum iOS deployment target has been increased from iOS 12 to iOS 15. This change is required to support newer iOS APIs and aligns with Apple's current compatibility standards.
- Foreground service type removed from library manifest: The
android:foregroundServiceTypeattribute is no longer declared in the library'sAndroidManifest.xml. Consumer apps must declare the foreground service types they use in their own manifest. BIND_NOTIFICATION_LISTENER_SERVICEpermission removed: This permission was declared withmaxSdkVersion=22which had no effect since the library'sminSdkis 23. Consumer apps needingNotificationListenerServicemust declare this permission themselves.- Build system updated: AGP 8.1.1 → 8.10.1, Gradle 8.10 → 8.11.1, dependencies updated (appcompat 1.7.1, material 1.13.0, media 1.7.1, room 2.8.4, lifecycle 2.10.0, sqlite 2.6.2, guava 33.5.0, annotation 1.9.1).
- 6 new foreground service types: Added
-
0.10.120 Feb 2025Release notes
Open source →We’re excited to announce the release of Awesome Notifications v0.10.1, bringing essential updates to enhance compatibility and maintain long-term stability.
🆕 What’s New?
✅ Upgraded Dependencies – All dependencies have been updated to their latest stable versions, ensuring better performance and compatibility.
✅ Full Support for Flutter 3.27 – Removed deprecated Flutter V1 APIs, which are no longer supported in newer Flutter versions and could cause build failures.📢 Why Update?
This version ensures seamless integration with the latest Flutter 3.27, resolves potential build issues, and improves overall stability.
We highly recommend all users upgrade to v0.10.1 to take advantage of these improvements! 🚀
Release notes
Open source →Fixed
- Updated Android native library to fully support Flutter 3.27: Removed deprecated Flutter V1 libraries on Android, ensuring compatibility with Flutter 3.27.
-
0.10.015 Oct 2024Release notes
Open source →We're excited to announce the release of Awesome Notifications Version 0.10.0. This update encompasses a range of enhancements designed to improve the functionality and stability of your notification experiences on both Android and iOS platforms, as well as ensuring full compatibility with the latest Flutter developments.
Key Enhancements:
Extended Support for Flutter 3.24
- Updated to Flutter 3.24: The entire Awesome Notifications framework, including the example app, has been updated to fully support Flutter 3.24. This includes adapting to new Gradle Java standards and leveraging the latest features and optimizations provided by Flutter.
Android Platform Enhancements
- Android 14 and AGP 8 Support: Upgraded all dependencies and the example app for full compatibility with Android 14 and Android Gradle Plugin 8, utilizing the latest Android features and development tools.
- Firebase Dependencies Updated: Updated all Firebase dependencies to support Firebase core 3.0.0, ensuring our framework integrates seamlessly with the latest Firebase improvements.
- MediaPlayer Album Art Resolution Fix: Addressed an issue where album art was displaying at reduced resolution on Android 14 devices. Album artwork now renders clearly and crisply, improving the visual quality of the media player.
iOS Platform Enhancements
- Resilience Against Misconfigured Notification Service Extensions: Made adjustments to enhance resilience against missing registered events caused by misconfigured Notification Service Extension targets. In such cases, events will be registered using the current date instead, avoiding crashes.
Cross-Platform Improvements
- Interval Changes to Duration Type: Changed interval values from integers (seconds) to Duration type, enhancing readability and understanding of time intervals within code.
Deprecated Features
- Deprecation of weekOfMonth Parameter: The
weekOfMonthparameter is deprecated due to unimplemented dependencies expected in versions beyond 1.0.0. It may be reconsidered for future inclusion.
Breaking Changes
- Minimum Android SDK Increased to 23: The minimum Android version supported is now Android 6.0 (Marshmallow), to utilize newer security and encryption features.
- Minimum iOS Deployment Target Increased to iOS 12: The increase in iOS deployment target to iOS 12 enhances compatibility with newer iOS features and improves security and performance.
- Manual Addition of Android Permissions Required: Developers must now manually declare necessary permissions in their AndroidManifest.xml to ensure full functionality of the notification features, in case they are needed:
android.permission.VIBRATEandroid.permission.SCHEDULE_EXACT_ALARMandroid.permission.USE_FULL_SCREEN_INTENTandroid.permission.WAKE_LOCKandroid.permission.FOREGROUND_SERVICEandroid.permission.RECEIVE_BOOT_COMPLETED
This version represents our commitment to providing a powerful, flexible notifications framework that meets the demands of modern app development. By addressing key areas of enhancement and ensuring compatibility with the latest development standards, we aim to deliver a more reliable, feature-rich package that developers can depend on for creating engaging notification experiences.
We encourage all users to update to version 0.10.0 to take full advantage of these improvements.
Release notes
Open source →Added
- Support to AGP 8: Added new proguard rules to allow SQLite database, used to capture notification events and schedules, to work with AGP 8.
- Example app updated to support Flutter 3.19: The flutter example was updated to fully support Flutter 3.24 with new Gradle Java Standards.
- Firebase dependencies updated: All Firebase dependencies was updated to support Firebase core 3.0.0.
- Intervals changed to Duration type: The inteval value was changed from int (sec) to Duration, allowing a better understanding of time reading the code.
- Documentation Updated: Documentation updated to also include AndroidManifest instructions to recreate schedules when the device is restarted.
Fixed
- MediaPlayer Album Art Resolution Fix: Addressed an issue where album art was displaying at reduced resolution on Android 14 devices. Album artwork now renders clearly and crisply, improving the visual quality of the media player.
Removals
- Gson Library Removal: Removed the Gson library due to compatibility issues with Android's latest releases and the R8 minification process. Transitioned to a more robust serialization framework that better supports obfuscation and modern Android versions.
Breaking changes
- Minimal supported Android version increased to 23: The minimal android supported is now 23 (Android 6), since some encryption and security features rely on this minimal version.
- Minimum iOS Deployment Target Increased to 12: The minimum iOS deployment target has been increased to iOS 12 to leverage newer API capabilities and enhance app security and performance.
- Necessity to Manually Add Permissions in AndroidManifest.xml: Projects will now need to manually declare the following permissions in their AndroidManifest.xml in case needed:
android.permission.VIBRATEandroid.permission.SCHEDULE_EXACT_ALARMandroid.permission.USE_FULL_SCREEN_INTENTandroid.permission.WAKE_LOCKandroid.permission.FOREGROUND_SERVICEandroid.permission.RECEIVE_BOOT_COMPLETED
Deprecated
- weekOfMonth parameter is deprecated and scheduled for removal in a future release due to unimplemented dependencies expected in versions beyond 1.0.0. It may be reconsidered for inclusion in later versions.
-
0.9.316 Mar 2024Release notes
Open source →We're excited to announce the release of Awesome Notifications Version 0.9.3. This update encompasses a range of improvements and updates designed to enhance the functionality and stability of your notification experiences on both Android and iOS platforms.
Key Enhancements:
Enhanced Stability and Event Management
- Introduced a double-check mechanism for createdDate and displayedDate fields within the lost events manager to prevent null pointer exceptions and ensure the reliability of event tracking on iOS in cases where the implementation doesn't follow the awesome recommendations.
Richer Notification Content
- Expanded notification capabilities to include image support across all layouts on iOS, providing a richer and more engaging user experience.
Dependency and Standards Upgrades
- Project dependencies across the board have been upgraded to their latest versions, embracing improvements, security patches, and new features to ensure the framework remains robust and secure.
- Specifically for Android, dependencies were updated and the project was migrated to comply with Flutter 3.19 standards, including modifications to build.gradle files and dependency management to enhance compatibility and performance.
- The iOS core has been updated to version 0.9.3, aligning with the latest native improvements and features.
UI Component Improvements
- The SimpleButton widget in the example app has been refined to replace deprecated properties with the latest Flutter equivalents, ensuring that the UI components of Awesome Notifications stay current and fully functional.
System Updates
- Both Android Core dependencies and iOS core versions have been updated to 0.9.3, bringing in the latest enhancements from the core libraries to the Awesome Notifications package.
This version represents our commitment to providing a powerful, flexible notifications framework that meets the demands of modern app development. By addressing key areas of enhancement and ensuring compatibility with the latest development standards, we aim to deliver a more reliable, feature-rich package that developers can depend on for creating engaging notification experiences.
We encourage all users to update to version 0.9.3 to take full advantage of these improvements.
Release notes
Open source →Added
- Double Check in Lost Events Manager: Implemented a double-check for
createdDateanddisplayedDatefields to enhance the stability of the Awesome Notifications framework. - Image Support for iOS Notifications: Expanded image support to all notification layouts on the iOS platform, enabling a richer user experience.
- Upgrade to Flutter 3.19 Standards: Migrated Android configuration and dependency management to comply with Flutter 3.19 standards.
- Project and Android Core Dependencies Updated: Upgraded all project dependencies, including Android core dependencies to version 0.9.3, to their latest versions.
Improved
- Notification Builder Flexibility: Adjusted notification builder to eliminate the need for setting a summary in the Messaging layout, addressing the exception "User must be valid and have a name."
- SimpleButton Widget Update: Updated the
SimpleButtonwidget in the example app to use non-deprecated properties, ensuring compatibility with the latest Flutter versions.
Breaking Changes
- Progress Property Type Change: The
progressproperty inNotificationContenthas been altered frominttodoublefor improved precision in notification progress indication.
Dependency Updates
- iOS Core Version Bumped to 0.9.3: Updated the iOS core version to 0.9.3 to align with the latest enhancements and fixes.
- Android Core Dependencies Updated to 0.9.3: The Android core dependencies have been updated to reflect the latest improvements, security patches, and new features.
-
0.9.3+117 Mar 2024Release notes
Open source →Transition Support from Github to Discord Community
- GitHub Issues Closure: Effective immediately, GitHub issues will no longer be open for new support requests. Existing issues will remain accessible as an archive and resource.
- Discord Community Support: All support for Awesome Notifications has transitioned to our Discord community. This move aims to provide a more dynamic, interactive, and efficient support experience.
- Reasons for Change:
- Community Rules Respect: Numerous issues posted on GitHub have not adhered to our community guidelines, impacting heavily on support efficiency and effectiveness.
- Efficiency and Effectiveness: Managing support through GitHub has become exceedingly time-consuming, particularly when posts omit critical information or disregard guidelines.
- Quality of Support: Our Discord community allows for real-time engagement, resource sharing, and a closer-knit user and developer interaction, which wasn't true for GitHub.
- Next Steps for Users: We encourage all users to join our Discord community https://discord.awesome-notifications.carda.me/ for ongoing support, updates, and to connect with fellow users and the development team.
-
0.9.217 Jan 2024Release notes
Open source →Added
- Cancel schedule for iOS: The feature
cancelSchedulewas added to iOS platform. - Example app updated: The example app was updated to reflect the last changes.
Release notes
Open source →Added
- Cancel schedule for iOS: The feature
cancelSchedulewas added to iOS platform. - Example app updated: The example app was updated to reflect the last changes.
- Cancel schedule for iOS: The feature
-
0.9.112 Jan 2024Release notes
Open source →[0.9.1] - 2024-11-01
Breaking Changes
- Progress Property Now Double: The
progressproperty inNotificationContenthas been changed frominttodouble. This modification enhances the precision of progress values in notifications.
Release notes
Open source →Breaking Changes
- Progress Property Now Double: The
progressproperty inNotificationContenthas been changed frominttodouble. This modification enhances the precision of progress values in notifications.
Improvements
- Enhanced Documentation: Updated the README documentation to include details on the new media player properties and the updated
progressproperty type. - Refined Test Cases: Revised test cases to cover the new
doubletype forprogressand related numerical conversions, ensuring robustness and accuracy.
Bug Fixes
- Default Values for MediaPlayer Properties: Introduced default values for new media player properties like
duration,playState, andplaySpeed. This change aims to eliminate null exceptions and improve reliability.
- Progress Property Now Double: The
-
0.9.003 Jan 2024Release notes
Open source →Breaking Changes
- Pod modifications: Now it's necessary to also add Awesome Notifications pod modification inside
PodFileat iOS folder. - Receive port and send port: The methods
sendPort.send()andreceivePort!.listen()now only accept serialized data, not objects. Convert your data to a map format and reconstruct it later from this format. - License Key (Year 2): Starting the year 2 support of awesome suite. In case your license was generated for Year 1 and you're still under the 1-year purchase support you just need to reply to the license email requesting the free update.
Added
- Translation keys and Args: Implemented support for dynamic localization in notifications. Translation keys (
titleLocKey,bodyLocKey) and their respective arguments (titleLocArgs,bodyLocArgs) can now be used to localize notification content dynamically based on the user's language preference. - Authentication required action: New action property that requires user authentication to proceed.
Improvements
- Extended Support: We're excited to announce the commencement of our "Year 2 Support Season." This includes ongoing maintenance, regular updates, and dedicated support.
- Flutter 3.16.5 Compatibility: The plugin is now fully compatible with Flutter 3.16.5.
Bug Fixes
- Enhanced Event Handling on Android: We've modified event handlers on Android to support negative values. This enhancement ensures more robust and reliable event management.
- Resolved Silent Callback Issue: Fixed a previously encountered issue where silent callbacks were missing for silent background actions.
Release notes
Open source →Breaking Changes
- Pod modifications: Now it's necessary to also add Awesome Notifications pod modification inside
PodFileat iOS folder. - Receive port and send port: The methods
sendPort.send()andreceivePort!.listen()now only accept serialized data, not objects. Convert your data to a map format and reconstruct it later from this format. - License Key (Year 2): Starting the year 2 support of awesome suite. In case your license was generated for Year 1 and you're still under the 1-year purchase support you just need to reply to the license email requesting the free update.
Added
- Translation keys and Args: Implemented support for dynamic localization in notifications. Translation keys (
titleLocKey,bodyLocKey) and their respective arguments (titleLocArgs,bodyLocArgs) can now be used to localize notification content dynamically based on the user's language preference. - Authentication required action: New action property that requires user authentication to proceed.
Improvements
- Extended Support: We're excited to announce the commencement of our "Year 2 Support Season." This includes ongoing maintenance, regular updates, and dedicated support.
- Flutter 3.16.5 Compatibility: The plugin is now fully compatible with Flutter 3.16.5.
Bug Fixes
- Enhanced Event Handling on Android: We've modified event handlers on Android to support negative values. This enhancement ensures more robust and reliable event management.
- Resolved Silent Callback Issue: Fixed a previously encountered issue where silent callbacks were missing for silent background actions.
- Pod modifications: Now it's necessary to also add Awesome Notifications pod modification inside
-
0.8.319 Dec 2023Nothing published for this version
-
0.8.202 Oct 2023 -
0.8.102 Oct 2023Release notes
Open source →Fixed
- Swift libraries updated to utilize a shared reference from the new Logger class.
-
0.8.002 Oct 2023Release notes
Open source →Fixed
- Updated library versions to 0.8.0 to ensure that project lock files are updated.
-
0.7.728 Sep 2023Nothing published for this version
-
0.7.627 Sep 2023Nothing published for this version
-
0.7.525 Sep 2023Nothing published for this version
-
0.7.5-dev.304 Jun 2023 pre-releaseNothing published for this version
-
0.7.5-dev.213 May 2023 pre-releaseNothing published for this version
-
0.7.5-dev.2+114 May 2023 pre-releaseNothing published for this version
-
0.7.5-dev.105 May 2023 pre-releaseNothing published for this version
-
0.7.425 Oct 2022Nothing published for this version
-
0.7.4+129 Oct 2022Nothing published for this version
-
0.7.316 Oct 2022Nothing published for this version
-
0.7.208 Oct 2022Nothing published for this version
-
0.7.106 Oct 2022Nothing published for this version
-
0.7.005 Oct 2022Nothing published for this version
-
0.7.0+105 Oct 2022Nothing published for this version
-
0.7.0-beta.725 Sep 2022 pre-releaseNothing published for this version
-
0.7.0-beta.7+126 Sep 2022 pre-releaseNothing published for this version
-
0.7.0-beta.7+226 Sep 2022 pre-releaseNothing published for this version
-
0.7.0-beta.7+326 Sep 2022 pre-releaseNothing published for this version
-
0.7.0-beta.7+426 Sep 2022 pre-releaseNothing published for this version
-
0.7.0-beta.7+527 Sep 2022 pre-releaseNothing published for this version
-
0.7.0-beta.623 Aug 2022 pre-releaseNothing published for this version
-
0.7.0-beta.6+102 Sep 2022 pre-releaseNothing published for this version
-
0.7.0-beta.530 Jun 2022 pre-releaseNothing published for this version
-
0.7.0-beta.421 May 2022 pre-releaseNothing published for this version
-
0.7.0-beta.312 May 2022 pre-releaseNothing published for this version
-
0.7.0-beta.3+113 May 2022 pre-releaseNothing published for this version
-
0.7.0-beta.3+214 May 2022 pre-releaseNothing published for this version
-
0.7.0-beta.202 Apr 2022 pre-releaseNothing published for this version
-
0.7.0-beta.122 Feb 2022 pre-releaseNothing published for this version
-
0.6.2117 Jan 2022Nothing published for this version
-
0.6.2009 Jan 2022Nothing published for this version
-
0.6.1908 Dec 2021Nothing published for this version
-
0.6.1824 Nov 2021Nothing published for this version
-
0.6.18+124 Nov 2021Nothing published for this version
-
0.6.18+224 Nov 2021Nothing published for this version
-
0.6.1709 Nov 2021Nothing published for this version
-
0.6.1602 Nov 2021Nothing published for this version
-
0.6.1501 Nov 2021Nothing published for this version
-
0.6.1401 Nov 2021Nothing published for this version
-
0.6.1329 Oct 2021Nothing published for this version
-
0.0.625 Apr 2021Nothing published for this version
-
0.0.6+125 Apr 2021Nothing published for this version
-
0.0.6+227 Apr 2021Nothing published for this version
-
0.0.6+327 Apr 2021Nothing published for this version
-
0.0.6+402 May 2021Nothing published for this version
-
0.0.6+505 May 2021Nothing published for this version