Breaking
- Updates the native iOS bridge from Braze Swift SDK 18.2.1 to 19.1.0.
- Raises the minimum supported iOS version from 12.0 to 15.0, matching the requirements of Braze Swift SDK 19.0.0.
- Includes the Swift SDK change that persists the last known push token, so push unregistration succeeds after the app restarts.
- Updates the native Android SDK version bindings from Braze Android SDK 43.1.1 to 44.0.0.
- On iOS, replaces
[BrazeReactDataTranslator formatPushPayload:withLaunchOptions:]with[BrazeReactDataTranslator formatPushPayload:withUrlOverride:].
Fixed
- Fixes an Android issue where
Braze.BrazeBannerViewdid not release its underlying WebView when unmounted, keeping it registered with the SDK and retaining its context. - Fixes an iOS issue where
pod installfailed in apps usinguse_frameworks! :linkage => :dynamic.- The pod now always builds as a static framework when
use_frameworks!is enabled. This resolves an error of the pod being linked twice (dynamically + statically). - Apps without
use_frameworks!or with static linkage are unchanged. - Thanks @huextrat for your contribution!
- The pod now always builds as a static framework when
- Fixes an iOS issue where Release builds could fail with a Swift compiler crash on Xcode 26.6 (Swift 6.3.3) in apps that call
BrazeReactInitializer.configure, including apps using the Braze Expo plugin.
Added
- Adds
[[BrazeReactUtils sharedInstance] populateInitialPayloadFromNotificationResponse:].- Call this method from
scene:willConnectToSession:options:withconnectionOptions.notificationResponse. - This method addresses an iOS issue where
Braze.getInitialPushPayload()returnednullon a cold start from a push tap when the app uses the UIKit scene life cycle.
- Call this method from
Changed
- Updates the Braze sample app to use React Native version
0.88.0.- This validates SDK compatibility with this version of React Native.
- The iOS sample app now uses the UIKit scene life cycle with a
SceneDelegate, as recommended in the React Native 0.88 template.