flutter_local_notifications

A Flutter plugin for displaying local notifications on Android, iOS, macOS and Linux

Stars
2.4K
Committers
119

Bot releases are visible (Hide)

flutter_local_notifications - flutter_local_notifications-v2.0.2

Published by MaikuB about 4 years ago

  • [iOS][macOS] fixed issue 860 where notifications may fail to be scheduled to an error parsing the specified date that could occur for some users depending on their locale and if they had turned off the setting for showing 24 hour time on their device. Thanks to the PR from Eugene Alitz
flutter_local_notifications - flutter_local_notifications-v2.0.1+1

Published by MaikuB about 4 years ago

  • Updated example application to demonstrate how to use the schedule notifications to occur on particular weekday using zonedSchedule method
  • Added a note on migrating away from the deprecated methods for scheduling daily/weekly notifications
flutter_local_notifications - flutter_local_notifications-v2.0.1

Published by MaikuB about 4 years ago

  • [Android] updated plugin and steps in the readme to ensure notifications remain scheduled after a HTC device restarts. Thanks to the PR from Le Liam
flutter_local_notifications - flutter_local_notifications-v2.0.0+1

Published by MaikuB about 4 years ago

  • Fixed code snippet in readme around initialisation and configuring the onDidReceiveLocalNotification callback specific to iOS. Thanks to the PR from Mike Truso
flutter_local_notifications - flutter_local_notifications-v2.0.0

Published by MaikuB about 4 years ago

  • Added macOS implementation of the plugin
  • The schedule, showDailyAtTime and showWeeklyAtDayAndTime methods has been marked as a deprecated due to problems with time zones, particularly when it comes to daylight savings.
  • Added the zonedSchedule method to the plugin that allows for scheduling notifications to occur on a specific date and time relative a specific time zone. This can be used to schedule daily and weekly notifications as well. The example app has been updated to demonstrate its usage. Applications will need to retrieve the device's local IANA timezone ID via native code or a plugin (e.g. flutter_native_timezone). Note that to support time zone-based scheduling, the plugin now depends on the timezone package so that an instance of the TZDateTime class is required to the specify the time the notification should occur. This should work in most cases as it is IANA-based and native platforms have time zones that are IANA-based as well. To support time zone aware dates on older versions of Android (which use older Java APIs), the plugin depends on the ThreeTen Android Backport library. Once Flutter's support for Android Studio 4.0 and Android Gradle plugin 4.0 has stabilised, the plugin will be updated to make use of desugaring instead of relying on the ThreeTen Android Backport library.
  • [Android] Fixed issue [670] where getNotificationAppLaunchDetails() behaved inconsistently depending on if it was called before or after initialize()
  • [Android] Added the getActiveNotifications() method to the AndroidFlutterLocalNotificationsPlugin class thanks to the PR from Vincent Kammerer. This can be used to query the active notifications and is only applicable to Android 6.0 or newer
  • [Android] Fixed an issue where the error message for an invalid source resource wasn't formatted correctly to include the name of the specified resource
  • [Android] Added androidAllowWhileIdle boolean argument to the periodicallyShow method. When set to true, this changes how recurring notifications are shown so that the Android AlarmManager API is used to schedule a notification with exact timing. When the notification appears, the next one is scheduled after that. This is get around the limitations where the AlarmManager APIs don't provide a way for work to be repeated with precising timing regardless of the power mode.
    The example app has been updated to include these changes so that it can be used as a reference as well
  • [Android] Added support for full-screen notifications via the fullScreenIntent argument that has been added to the constructor of the AndroidNotificationDetails class. Thanks to the PR from Nadav Fima
  • [Android] Bumped compile SDK to 30 (Android 11)
  • [Android] Added ability to specify shortcut id that can be used for conversations. See https://developer.android.com/guide/topics/ui/conversations for more info. Note the plugin doesn't provide the ability to publish shortcuts so developers will likely need to look into writing their own code to do so and save the shortcut id so that it can be linked to notifications
  • [iOS] Updated the details in the plugin's podspec file
  • [iOS] Added ability to specify a subtitle for a notification via the subtitle property of the IOSNotificationDetails class. This property is only application to iOS versions 10 or newer
  • Breaking change The InitializationSettings and NotificationDetails classes no longer have positional parameters but now have named parameters called android and iOS for passing in data specific to Android and iOS. There macOS named parameter has also been added for passing data specific to macOS
  • Breaking change The toMap method that was used internally to transfer data over platform channels is no longer publicly accessible
  • Breaking change All enum values have been renamed to follow lower camel case convention. This affects the following enums
    • Day
    • AndroidNotificationChannelAction
    • Importance (note: as default is a keyword, what use to be Default is now defaultImportance)
    • Priority (note: as default is a keyword, what use to be Default is now defaultPriority)
    • GroupAlertBehavior
    • NotificationVisibility
    • RepeatInterval
  • Breaking change assertions have been added to the IOSInitializationSettings constructor to prevent null values being passed in
  • Updated example app so that code for demonstrating functionality that is specific to a platform are only visible when running on the appropriate platform
  • Bumped Android dependencies
  • Updated example app's Proguard rules file to match latest configuration required by GSON
  • Bumped lower bound of Dart SDK dependency to 2.6
  • Updated and fixed wording in API docs
  • Readme now has a table of contents. Thanks to the PR from Ascênio

This was incorrectly published in the 1.5.0 update

flutter_local_notifications - flutter_local_notifications-v1.5.0+1

Published by MaikuB about 4 years ago

  • Revert the breaking 1.5.0 update as that should have been published with the major version incremented
flutter_local_notifications - flutter_local_notifications-v1.5.0

Published by MaikuB about 4 years ago

  • Added macOS implementation of the plugin
  • The schedule, showDailyAtTime and showWeeklyAtDayAndTime methods has been marked as a deprecated due to problems with time zones, particularly when it comes to daylight savings.
  • Added the zonedSchedule method to the plugin that allows for scheduling notifications to occur on a specific date and time relative a specific time zone. This can be used to schedule daily and weekly notifications as well. The example app has been updated to demonstrate its usage. Note that to support time zone-based scheduling, the plugin now depends on the timezone package so that an instance of the TZDateTime class is required to the specify the time the notification should occur. This should work in most cases as it is IANA-based and native platforms have time zones that are IANA-based as well. To support time zone aware dates on older versions of Android (which use older Java APIs), the plugin depends on the ThreeTen Android Backport library. Once Flutter's support for Android Studio 4.0 and Android Gradle plugin 4.0 has stabilised, the plugin will be updated to make use of desugaring instead of relying on the ThreeTen Android Backport library.
  • [Android] Fixed issue [670] where getNotificationAppLaunchDetails() behaved inconsistently depending on if it was called before or after initialize()
  • [Android] Added the getActiveNotifications() method to the AndroidFlutterLocalNotificationsPlugin class thanks to the PR from Vincent Kammerer. This can be used to query the active notifications and is only applicable to Android 6.0 or newer
  • [Android] Fixed an issue where the error message for an invalid source resource wasn't formatted correctly to include the name of the specified resource
  • [Android] Added androidAllowWhileIdle boolean argument to the periodicallyShow method. When set to true, this changes how recurring notifications are shown so that the Android AlarmManager API is used to schedule a notification with exact timing. When the notification appears, the next one is scheduled after that. This is get around the limitations where the AlarmManager APIs don't provide a way for work to be repeated with precising timing regardless of the power mode.
    The example app has been updated to include these changes so that it can be used as a reference as well
  • [Android] Added support for full-screen notifications via the fullScreenIntent argument that has been added to the AndroidNotificationDetails class. Thanks to the PR from Nadav Fima
  • [Android] Bumped compile SDK to 30 (Android 11)
  • [Android] Added ability to specify shortcut id that can be used for conversations. See https://developer.android.com/guide/topics/ui/conversations for more info. Note the plugin doesn't provide the ability to publish shortcuts so developers will likely need to look into writing their own code to do so and save the shortcut id so that it can be linked to notifications
  • [iOS] Updated the details in the plugin's podspec file
  • [iOS] Added ability to specify a subtitle for a notification via the subtitle property of the IOSNotificationDetails class. This property is only application to iOS versions 10 or newer
  • Breaking change The InitializationSettings and NotificationDetails classes no longer have positional parameters but now have named parameters called android and iOS for passing in data specific to Android and iOS. There macOS named parameter has also been added for passing data specific to macOS
  • Breaking change The toMap method that was used internally to transfer data over platform channels is no longer publicly accessible
  • Breaking change All enum values have been renamed to follow lower camel case convention. This affects the following enums
    • Day
    • AndroidNotificationChannelAction
    • Importance (note: as default is a keyword, what use to be Default is now defaultImportance)
    • Priority (note: as default is a keyword, what use to be Default is now defaultPriority)
    • GroupAlertBehavior
    • NotificationVisibility
    • RepeatInterval
  • Breaking change assertions have been added to the IOSInitializationSettings constructor to prevent null values being passed in
  • Updated example app so that code for demonstrating functionality that is specific to a platform are only visible when running on the appropriate platform
  • Bumped Android dependencies
  • Updated example app's Proguard rules file to match latest configuration required by GSON
  • Bumped lower bound of Dart SDK dependency to 2.6
  • Updated and fixed wording in API docs
  • Readme now has a table of contents. Thanks to the PR from Ascênio
flutter_local_notifications - flutter_local_notifications_platform_interface-v2.0.0

Published by MaikuB about 4 years ago

  • BREAKING CHANGE renamed RepeatInterval enum values to use lower camel casing
  • Bump plugin_platform_interface dependency
flutter_local_notifications - flutter_local_notifications-v1.4.4+5

Published by MaikuB about 4 years ago

  • Updated the platform package version range constraint so that 3.x null safety releases could be used (currently used in Flutter 1.22 stable)
flutter_local_notifications - flutter_local_notifications-v1.5.0-beta.10

Published by MaikuB about 4 years ago

  • [Android] Bumped compile SDK to 30 (Android 11)
  • [Android] Added ability to specify shortcut id that can be used for conversations. See https://developer.android.com/guide/topics/ui/conversations for more info. Note the plugin doesn't provide the ability to publish shortcuts so developers will likely need to look into writing their own code to do so and save the shortcut id so that it can be linked to notifications
  • Readme now has a table of contents. Thanks to the PR from Ascênio
flutter_local_notifications - flutter_local_notifications-v1.5.0-beta.9

Published by MaikuB about 4 years ago

  • [Android] Fix issue 780 around a null pointer exception related to specifying a full screen intent. Thanks to the PR from Sebastian Faust
flutter_local_notifications - flutter_local_notifications-v1.5.0-beta.8

Published by MaikuB about 4 years ago

  • [Android] Fix null pointer exception with trying to access intent when activity is null. Thanks to the PR from Jonas Bornold
flutter_local_notifications - flutter_local_notifications-v1.5.0-beta.7

Published by MaikuB about 4 years ago

  • [Android] Added support for full-screen notifications via the fullScreenIntent argument that has been added to the AndroidNotificationDetails class. Thanks to the PR from Nadav Fima
flutter_local_notifications - flutter_local_notifications-v1.4.4+4

Published by MaikuB about 4 years ago

  • [Android] Fix issue 759 by guarding code on getting the intent from the activity in case there isn't an activity that could cause initialize() and getNotificationAppLaunchDetails() to fail when called from the background
flutter_local_notifications - flutter_local_notifications-v1.4.4+3

Published by MaikuB about 4 years ago

  • [Android] Fix issue 751 where the onSelectNotification callback could be called again after the user has tapped on a notification, sent the application to the background and returned to the app via the Recents screen. This issue could have previously called getNotificationAppLaunchDetails() to mistakenly report that a notification launched the app when it's called again as part of the application being resumed
flutter_local_notifications - flutter_local_notifications-v1.5.0-beta.6

Published by MaikuB over 4 years ago

  • [Android] Added the getActiveNotifications() method to the AndroidFlutterLocalNotificationsPlugin class thanks to the PR from Vincent Kammerer. This can be used to query the active notifications and is only applicable to Android 6.0 or newer
  • Updated and fixed wording in API docs
flutter_local_notifications - flutter_local_notifications-v1.5.0-beta.5

Published by MaikuB over 4 years ago

  • [Android] Fix initialisation of ThreeTen Android Backport library when notifications are being rescheduled
  • Removed e2e dependency from merging in changes from 1.4.4+2 release
flutter_local_notifications - flutter_local_notifications-v1.4.4+2

Published by MaikuB over 4 years ago

  • [Android] Updated readme and plugin to fix issue 689 where plugin needs to ensure notifications stay scheduled after an application update
  • Removed e2e dependency
flutter_local_notifications - flutter_local_notifications-v1.5.0-beta.4

Published by MaikuB over 4 years ago

  • [Android] Fix issue where the ThreeTen Android Backport library wasn't initialised
  • Bump e2e dev dependency
flutter_local_notifications - flutter_local_notifications-v1.5.0-beta.3

Published by MaikuB over 4 years ago

  • [Android] Fixed issue 670 where getNotificationAppLaunchDetails() behaved inconsistently depending on if it was called before or after initialize()