All notable changes to this project will be documented in this file.
This project adheres to Semantic Versioning.
- (iOS) Upgrade
@react-native-community/push-notification-ios
to version 1.10.0 - (iOS) Allow
month
,week
,day
,hour
,minute
asrepeatType
for iOS. - (Android) Allow HTML tags to be used for styling in bigText field only #2067.
- (Android): Fix Android 12 PendingIntent #2130
- (Android): Fix bug cancelLocalNotification() does not work on Android #2122
userInfo
is no more populated with theid
of the notification, initialy included to cancel scheduled notifications. This change will probably not impact you.- Rename
cancelLocalNotifications
tocancelLocalNotification
(deprecation notice).
- (iOS) upgrade
@react-native-community/push-notification-ios
to version 1.9.0 picture
is now support for both Android and iOS, (alias ofbigPictureUrl
for Android).
- (Android): Fix bug cancelLocalNotifications() does not work on Android #2100
- (Android): Allow for repeat to specify amount of the given repeat type. #2030
- (iOS): Add support for subtitle notification property. #2063
- (Android) Fix: Foreground notifications missing small icon. #1927
- (Android) Pin the firebase-messaging dependency to
21.1.0
. - (Android) Fix: android missing channelId warning should now show #1995.
- (Android) Add constants for notification importance #1959
- (Android) Fix: Task :react-native-push-notification:compileDebugJavaWithJavac FAILED #1979
- (Android) Fix: Notification drawer doesn't close after click on action that navigates you to app #1914
- (iOS) Fix: foreground notification property #1916
- (Android) Fix: Could not invoke RNPushNotification.getDeliveredNotifications. #1878
- (fix) deep clone details and notifications. #1793
- (iOS) Fix
playSound
options on local notifications. #1858
- (Android) Handle localization for notification title and body #1837
- (Android) unsubscribeFromTopic function fix #1831
- (Android) Add hooks to intent handling and bundle parsing #1819
- (iOS) Replace deprecated local notification methods on iOS #1751
- (Android) Rename the Android package from
RNPushNotification
toReactNativePushNotification
resolve #893 - (Android) Allow
userInfo
to be stored in scheduled notification as in iOS (mapped asdata
on press or list scheduled notifications).
- (Android) silent channel using playSound flag
- (Android) implement 'bigLargeIcon' for Android notifications (must be combined with BigPicture) #1730
- (Android) notification with inline reply #612
- (Android) Support using drawable as Android small icon #1787
- (Android) Null pointer exception when trying to create channel #1734
- (Android) Fix for vibration on notifs for Android API >= 26 #1686
- (Android) Fix a crash when the application is in background #1676
- (Android) Allow a default channel in the
AndroidManifest
:If not defined, fallback to the Firebase value of:<meta-data android:name="com.dieam.reactnativepushnotification.default_notification_channel_id" android:value="..."/>
If not defined, fallback to the default Firebase channel id<meta-data android:name="com.google.firebase.messaging.default_notification_channel_id" android:value="..."/>
fcm_fallback_notification_channel
- (Android) Channel Management: In order to limit the scope of responsability of this library, developers are now responsible of the creation of the channels. You can find the documentation at https://github.com/zo0r/react-native-push-notification#channel-management-android. These changes are also made to allow improvements in the future of the library. Here the list of impacts:
- You must create your channels before triggering a notification.
- These entries in
AndroidManifest
are deprecated:
<meta-data android:name="com.dieam.reactnativepushnotification.notification_channel_name" android:value="..."/> <meta-data android:name="com.dieam.reactnativepushnotification.notification_channel_description" android:value="..."/> <meta-data android:name="com.dieam.reactnativepushnotification.channel_create_default" android:value="..."/>
- Followings options changed on Android in
localNotification
andlocalNotificationSchedule
:channelId
becomes mandatory (warning if not provided)channelName
is deprecatedchannelDescription
is deprecatedimportance
is deprecated
- These changes help to avoid an issue #1649
- (Android) Remove check for the intent
BOOT_COMPLETED
, this should allow more intent action such asQUICKBOOT_POWERON
. It's recommended to updateAndroidManifest
, theRNPushNotificationBootEventReceiver
to:<receiver android:name="com.dieam.reactnativepushnotification.modules.RNPushNotificationBootEventReceiver"> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> <action android:name="android.intent.action.QUICKBOOT_POWERON" /> <action android:name="com.htc.intent.action.QUICKBOOT_POWERON"/> </intent-filter> </receiver>
@react-native-community/push-notification-ios
is now apeerDependency
, please make sure that you installed this library with NPM or YARN.- (Android) Fix a bug where notification data are not inside
data
property after been pressed by user. When sending notification + data and app in background. - (Android) Add more fields from the firebase notification part. (Thanks to @fattomhk with this PR #1626)
notificationPriority
image
tag
visibility
- (Android)
data.twi_body
is no more used to trigger a notification in notification-center. Revert of #744
- (iOS) upgrade
@react-native-community/push-notification-ios
, fixe the value ofuserInteraction
@react-native-community/push-notification-ios#122.
- (Android) Fatal Exception: java.lang.NullPointerException #1641
- (Android) Add support for specifying a delegate FirebaseMessagingService #1589
- (Android) Add support of
when
,usesChronometer
andtimeoutAfter
.
- (Android) Fix a bug where
userInteraction
is not set, notification when app in background pressed by user.
- (Android) Fix change that make gradle build fail #1578.
- (Android/iOS) Unify returned values between iOS and Android #1516.
- (Android/iOS)
.popInitialNotification(callback)
now return the same format asonNotification()
. - (Android)
popInitialNotification
inconfigure()
now trigger only once on app startup, same as iOS. - (Android)
notification.foreground
now return the good value, before the value wasfalse
most of the time.
- (Android) Add function
createChannel
for custom Android channel support #1509 - (Android) Add Android
messageId
to enable integration withreact-native-firebase/messaging
#1510 - (Android) Add support for
onlyAlertOnce
property #1519 - (Android) Allow to change default notification channel name after it's creation #1549
- (Android)
popInitialNotification
inconfigure()
now trigger only once and do not trigger twiceonNotification()
when user press the notification, more details: #1516. - (Android)
notification.foreground
now return the good value, before the value wasfalse
most of the time.
RNPushNotificationRegistrationService
has been removed, old reference in AndroidManifest must be removed.Notifications.registerNotificationActions()
has been removed and is not required foractions
.DeviceEventEmitter.addListener('notificationActionReceived', callback)
is replaced byonAction
.- Extra receiver must be added to manage actions.
<receiver android:name="com.dieam.reactnativepushnotification.modules.RNPushNotificationActions" />
- (iOS)
userInfo
is now populated with id by default to allow operation based onid
.
- (Android)
actions
accept an array of strings. - (Android)
invokeApp
allow you to handle actions in background without invoking the application. - (Android)
onAction
has been added to.configure()
to handle action in background. - (Android)
PushNotification.invokeApp(notification)
allow you to invoke the application when in background (notification for initial notification). - (Android)
PushNotification.getChannels(callback)
allow you to get the list of channels. - (Android)
PushNotification.channelExists(channel_id, callback)
allow you to check of a channel exists. - (Android)
PushNotification.channelBlocked(channel_id, callback)
allow you to check of a channel is blocked. Based on #1249 - (Android)
PushNotification.deleteChannel(channel_id)
allow you to delete a channel. - (Android) Add
largeIconUrl
to load a largeIcon based on Url. Based on #1444 - (Android) Add
bigPictureUrl
to load a picture based on Url. Based on #1444 - (Android) Add
shortcutId
for better badges management. - (Android) Add
showWhen
to display "when" it was published, default: true. - (Android) Add
groupSummary
to allow grouping notifications. Based on #1253 - (Android) Add
channelId
, custom channel_id in android. Based on #1159 - (Android) Add
channelName
, custom channel_name in android. - (Android) Add
channelDescription
, custom channel_description in android. - (iOS) Add fire date in notification response, NOTE:
push-notification-ios
in version> 1.2.0
#1345 - (iOS)
onRegistrationError
has been added to.configure()
to handleregistrationError
events. - (Android/iOS) Add method getScheduledLocalNotifications()#1466
- (Android) Replace java.util.Random with java.security.SecureRandom #1497
- (Android) WAKE_LOCK permission removed from documentation. #1494
- (Android) Some options were ignored on scheduled/repeating notifications (allowWhileIdle, ignoreInForeground).
- (Android/iOS) popInitialInotification might be ignored in
.configure()
- (Android) Sounds are playing even in Do Not Disturb #1432
- (Android) onNotification fires every time when the app goes from background to foreground #1455
- (Android) java.lang.NullPointerException: Attempt to invoke virtual method 'void com.dieam.reactnativepushnotification.modules.d.c(android.os.Bundle)' on a null object reference #1431
- (Android) When updating 3.4 to 3.5, unable to compile Android #1449
- (Android) Enables the ability to support multiple push providers #1445
- (Android) No sound on notifications #1432
- (Android) onNotification is not calling when app is in background #1446
- (Android)
number
andid
do not crash if NaN is passed in Android.
- (Android) Call
onRegister
when Firebase renew token. - (Android) Added Abandon Permissions method to Android #1425
- (Android) Add a new key in
AndroidManifest.xml
to allow/remove notification in foreground.
<meta-data android:name="com.dieam.reactnativepushnotification.notification_foreground"
android:value="false"/>
- (Android)
number
andid
are now correctly handled as number in Android. - (iOS) Update push-notification-ios to 1.2.0 #1410
- Make sure to import PushNotificationIOS from react-native first #617
- (Android) Fix regression with the importance of the notification.
- (Android) Keep interface parity with PushNotificationIOS #909
- (Android) Unsubscribe from topic #917
- (Android) Add notification data in onNotification #1212
- (Android) Create default channel to receive notification when background / killed.
- (Android) Fix vibrate: false is ignored #878
package.json
fix suffic in main,index
=>index.js
#878
- (Android) Remove specific code for GCM #1322
<service android:name="com.dieam.reactnativepushnotification.modules.RNPushNotificationRegistrationService"/>
must be removed.
- Invalid type
Strint
wrong typo - Missing import
- (Android) Allow to silence Android foreground notifications #1183
- (Android) Allow to set the notification to executes on idle #959
- (iOS) Add missing "category" parameter when scheduling local notifications. #457
- Fix: Breaking android x compatibility regression
- Fix: Use FirebaseInstanceId for deviceToken, not from Intent #1355
- Fix: security issue
limit the components that Intent will resolve to
#687 - Fix: remove fishy reference from android project files #1226
- Fix:
JSON value '<null>' of type NSNull cannot be converted to NSDictionary
#1030 - Fix: Fixed foreground FCM banner notifications and notification sound #1042
- Upgrade ShortCutBadger to 1.1.22 #646
- Upgrade exemple to React-Native 0.62.2
- Remove Types from the code use @types/react-native-push-notification instead.
- Remove GCM and C2DM references in README.md
- Rename firebaseVersion to firebaseMessagingVersion #1191 in gradle.build
- Abandon permissions unregisters remote only #1282
- Use full path for manifest #567
- Update broken link to docs #995
- Missing step for android manual installation #1363
- Fix Configuration 'compile' is obsolete and has been replaced with 'implementation' and Configuration 'testCompile' is obsolete and has been replaced with 'testImplementation'. It will be removed at the end of 2018. #1106
3.1.2 - 2018-10-16
- Allow to set notification's priority, visibility and importance options on Android, @lorenc-tomasz
aaf2d19
#854 - Added the "old" GCM listener to get compatibility with GCM back, @zo0r
3bd0b6f
#835 - Allow configuring notification channel and color through manifest, @Truebill
f7b4759
#822
- Fix example app cancel notification, @hshiraiwa
1143632
#869 - Update documentation to avoid falling Androids' build, @danibonilha
fc5c722
#879 - Fix react-native link command, @lfkwtz
9708445
#839 - Standardize Changelog, @rodrigobdz
a95af74
#831 - Updated sdk and build tool version on gradle file, @receme
8718e61
#826 - Fix requestPermissions crash, @zo0r
feada0c
#809 - Readme clarification on localNotificationSchedule(), @brownmagik352
beedb16
#816 - Fix title and message for Firebase, @Truebill
ccd9edc
#806 - Fix pop initial for firebase, @Truebill
b61ce08
#807 - Various readme typos, @elitree
a071458
#802
3.1.1 - 2018-07-31
- Android Oreo support (SDK >= 26) (PR #657)
- Firebase (FCM) Support (PR #717)
- Twilio support (PR #744)
- clearLocalNotification (PR #711)
Component Version | RN Versions | README |
---|---|---|
1.0.7 | <= 0.27 | Open |
1.0.8 | 0.28 | Open |
2.0.1 | 0.29 | Open |
2.0.2 | 0.30, 0.31, 0.32 | Open |
>= 2.1.0 | >= 0.33 | Open |