Skip to content
This repository has been archived by the owner on Jul 28, 2022. It is now read-only.

Releases: bamlab/react-native-batch-push

v7.0.3

25 Jan 17:08
Compare
Choose a tag to compare

What's Changed

This release has no impacts on regular React Native workflows (non-expo).

New Contributors

Full Changelog: v7.0.2...v7.0.3

v7.0.2

23 Jan 20:19
Compare
Choose a tag to compare

What's Changed

  • fix: Add check for active catalyst instance on react context by @Whysp3r in #71

Full Changelog: v7.0.1...v7.0.2

v7.0.1

16 Dec 10:43
Compare
Choose a tag to compare
  • Add support for Expo plugins for Android (no changes for regular usage)

v7.0.0

06 Dec 16:05
Compare
Choose a tag to compare
  • Migrated to Batch SDK v1.18
    • For iOS:
      1. [BREAKING] Make sure to update your Podfile Batch SDK version
      2. [BREAKING] Batch requires Xcode 13 or higher
  • Add BatchEventData.putURL
  • Add BatchUserEditor.setURLAttribute
  • Add BatchEventData.putDate(timestamp) (BatchUserEditor.setDateAttribute already exists)
  • Add BatchMessaging.addListener and BatchPush.addListener to listen for messaging and push notifications events
  • Add new methods to replace deprecated BatchPush.registerForRemoteNotifications:
    • to request iOS permission BatchPush.requestNotificationAuthorization and BatchPush.requestProvisionalNotificationAuthorization (to be called when you want to ask user for the permission)
    • to synchronize the token with Batch BatchPush.refreshToken (to be called at each app launch after opt-in if you're opted out by default)
  • Fix isUnread property of a Batch inbox notification : it was previously always undefined, now it is correctly set
  • Fix crash in trackTransaction

Full Changelog: v6.0.2...v7.0.0

v7.0.0-rc.0

29 Nov 20:36
Compare
Choose a tag to compare
v7.0.0-rc.0 Pre-release
Pre-release

This is a pre-release for the next minor version of @bam.tech/react-native-batch. The documentation hosted on GitHub has not been updated as this is still a pre-release.

  • Migrated to Batch SDK v1.18
    • For iOS:
      1. [BREAKING] Make sure to update your Podfile Batch SDK version
      2. [BREAKING] Batch requires Xcode 13 or higher
  • Add BatchEventData.putURL
  • Add BatchUserEditor.setURLAttribute
  • Add BatchEventData.putDate(timestamp) (BatchUserEditor.setDateAttribute already exists)
  • Add BatchMessaging.addListener and BatchPush.addListener to listen for messaging and push notifications events
  • Add new methods to replace deprecated BatchPush.registerForRemoteNotifications:
    • to request iOS permission BatchPush.requestNotificationAuthorization and BatchPush.requestProvisionalNotificationAuthorization (to be called when you want to ask user for the permission)
    • to synchronize the token with Batch BatchPush.refreshToken (to be called at each app launch after opt-in if you're opted out by default)

Full Changelog: v6.0.2...v7.0.0-rc.0

v6.1.0-rc.0

24 Nov 11:18
Compare
Choose a tag to compare
v6.1.0-rc.0 Pre-release
Pre-release

This is a pre-release for the next minor version of @bam.tech/react-native-batch. The documentation hosted on GitHub has not been updated as this is still a pre-release.

  • Add BatchMessaging.addListener and BatchPush.addListener to listen for messaging and push notifications events
    • see documentation for iOS event dispatchers and Android event dispatchers to see platform differences)
    • Note that currently (Batch 1.17), notification_open for Android has a problem on the Batch Android SDK, waiting for a fix. You can still use notification_display although the user might not have clicked on it
  • Add new methods to replace deprecated BatchPush.registerForRemoteNotifications:
    • to request iOS permission BatchPush.requestNotificationAuthorization and BatchPush.requestProvisionalNotificationAuthorization (to be called when you want to ask user for the permission)
    • to synchronize the token with Batch BatchPush.refreshToken (to be called at each app launch after opt-in if you're opted out by default)

Full Changelog: v6.0.2...v6.1.0-rc.0

v6.0.1

29 Oct 17:12
Compare
Choose a tag to compare

This is a small patch release including the following fix:

  • Increase max attributes constraint (15 since Batch SDK 1.15.+)
  • Check max attributes based on attributes count and not tags count (there was a mix-up)

Full Changelog: v6.0.0...v6.0.1

v6.0.0

22 Jun 15:03
Compare
Choose a tag to compare

There are several breaking changes (indicated with [BREAKING]) so please read along.

Features

Batch SDK version

  • Migrated to Batch SDK v1.17
    • For iOS:
      1. [BREAKING] Make sure to update your Podfile Batch SDK version
      2. [BREAKING] Batch requires Xcode 12 and iOS 10.0 or higher
      3. [BREAKING] Make sure to follow again the Extra steps on iOS, a new section has been added about the BatchUNUserNotificationCenterDelegate (if you haven't implemented a delegate yet)
    • For Android:
      1. [BREAKING] Make sure to have up-to-date android build tools (see Android blog)
  • [Android] You can now update the Batch SDK manually with the rootProject ext property batchSdkVersion. On iOS this was already possible (you set the version in your Podfile)

Mobile landings / in app messages

  • Added BatchMessaging.setFontOverride() so that you can change the font of messaging views (eg. In-app campaigns landings)
  • Added disableDoNotDisturbAndShowPendingMessage for quicker setup and to minimize any race condition between disabling do not disturb and showing the pending message
  • Do not disturb (for mobile landings/in app messages) can now be enabled natively on Android and iOS. 99% of the time on a regular React Native app, you should enable it. See README) to see why and how to handle the new behavior (call disableDoNotDisturbAndShowPendingMessage when ready, or disable do not disturb manually).
    • [BREAKING] Batch.start is now useless so it has been removed. You must remove any call to Batch.start in your javascript code.
    • [BREAKING] [iOS] the optional argument to [RNBatch start] native method is now useless so it has been removed. You must replace any [RNBatch start:false] to [RNBatch start]

DX improvements

  • Chaining Batch User editor is now optional
  • Added Batch.showDebugView() so that you can easily debug your Batch installation

Inbox

  • [BREAKING] [Inbox] Rewrote inbox API to expose every native SDK Inbox methods such as markNotificationAsRead. You can now implement an infinite loading list of notifications with this API. (see migration examples)

Bug Fixes

  • [Android] Fix resume count
    • This removes an error in the logs when receiving a push while in background and potentially fixes issues related to the app going from background to foreground
    • [BREAKING] In order to migrate, make sure to follow the new README section on configuring auto-linking
  • Fixed a GDPR scenario case where the Batch iOS/Android SDK might not be started
  • Added BatchPush.getInitialURL to workaround issues on iOS to get the deeplink associated to the notification that opened the app initially. Linking.getInitialURL can be replaced by BatchPush.getInitialURL on every platforms.
  • [iOS] [Inbox] Fixed a crash when a notification's source was unknown
  • Exposed promises in critical methods such as optIn in order to prevent potential race conditions
  • [iOS] showPendingMessage will now work correctly
  • [Android] Fixed potential crash in showPendingMessage when the activity is not found

Documentation

  • Added a guide in the doc for GDPR compliance
  • [iOS] Added a guide in the doc for showing notifications on foreground

All changes

v6.0.0-rc.4

17 Jun 04:57
Compare
Choose a tag to compare
v6.0.0-rc.4 Pre-release
Pre-release

This is a pre-release for the next version of @bam.tech/react-native-batch. There are several breaking changes (indicated with [BREAKING]) so please read along. The documentation hosted on GitHub has not been updated as this is still a pre-release. The following changelog may evolve with new breaking changes until the stable version.

See also rc.0 changelog, rc.1 changelog, rc.2 changelog, and rc.3 changelog.

This should be the last release candidate before final release.

  • [BREAKING] Do not disturb (for mobile landings/in app messages) is now disabled by default. This is a breaking change from v6.0.0-rc.3, but if you upgrade from a previous version there is no associated breaking change (this reverts the default behavior change of v6.0.0-rc.3) Batch team prefers this in order to have the same default behavior as full native apps. 99% of the time on a regular React Native app, you should enable it though (see README).

v6.0.0-rc.3

11 Jun 10:54
Compare
Choose a tag to compare
v6.0.0-rc.3 Pre-release
Pre-release

This is a pre-release for the next version of @bam.tech/react-native-batch. There are several breaking changes (indicated with [BREAKING]) so please read along. The documentation hosted on GitHub has not been updated as this is still a pre-release. The following changelog may evolve with new breaking changes until the stable version.

See also rc.0 changelog, rc.1 changelog, and rc.2 changelog.

  • [BREAKING] Do not disturb (for mobile landings/in app messages) is now enabled by default. And on Android, it is now configured on the native side like on iOS. Read the updated README to see why and how to handle the new behavior (call disableDoNotDisturbAndShowPendingMessage when ready, or disable do not disturb manually)
  • [BREAKING] Batch.start is now useless so it has been removed. You must remove any call to Batch.start in your javascript code.
  • [BREAKING] [iOS] the optional argument to [RNBatch start] native method is now useless so it has been removed. You must replace any [RNBatch start:false] to [RNBatch start]
  • [iOS] showPendingMessage will now work correctly
  • [Android] Fixed potential crash in showPendingMessage when the activity is not found
  • Added disableDoNotDisturbAndShowPendingMessage for quicker setup and to minimize any race condition between disabling do not disturb and showing the pending message
  • Exposed promises in critical methods such as optIn in order to prevent potential race conditions