Releases: braze-inc/braze-swift-sdk
Releases · braze-inc/braze-swift-sdk
9.2.0
9.2.0
Added
- Adds the
openNewWindowLinksInBrowser
configuration (default:false
) toBraze.ModalContext
.- Set this value in the
braze(_:willPresentModalWithContext:)
method of yourBrazeDelegate
to specify whether to launch the device browser to open web view hyperlinks that normally open a new tab or window.
- Set this value in the
Fixed
- Fixes an issue with the automatic push integration feature that could cause the SDK not to send the device token to Braze.
- Fixes an issue that prevented external links, which open in a new tab, from being activated in presented web views.
9.1.0
9.1.0
Added
- Adds support for 3 new Feature Flag property types and various APIs for accessing them:
Braze.FeatureFlag.timestampProperty(key:)
for accessingInt
Unix UTC millisecond timestamps.Braze.FeatureFlag.imageProperty(key:)
for accessing image URLs asString
s.Braze.FeatureFlag.jsonObjectProperty(key:)
for accessing JSONs as[String:Any]
dictionaries.Braze.FeatureFlag.jsonStringProperty(key:)
for accessing JSONs asString
s.
- Adds safeguards when reading the device model.
Fixed
- Fixes the duplicate symbols compilation errors and runtime warnings that may occur under specific conditions when integrating
BrazeKit
and eitherBrazeNotificationService
orBrazePushStory
via CocoaPods.
9.0.0
9.0.0
Breaking
- Removes the default privacy tracking domains from the
BrazeKit
privacy manifest.- If you are using the Braze data tracking features, you will need to manually add your tracking endpoint to your app-level privacy manifest.
- Refer to the updated tutorial for integration guidance.
- Removes the deprecated
BrazeDelegate.braze(_:sdkAuthenticationFailedWithError)
method in favor ofBrazeSDKAuthDelegate.braze(_:sdkAuthenticationFailedWithError)
.- This method was originally deprecated in release
5.14.0
. - Failing to switch to the new delegate method will not trigger a compiler error; instead, the
BrazeDelegate.braze(_:sdkAuthenticationFailedWithError)
method you define will simply not be called.
- This method was originally deprecated in release
Fixed
- Adds the missing
NSPrivacyCollectedDataTypes
key to theBrazePushStory
privacy manifest.
8.4.0
8.4.0
Added
- Expands Geofences behavior in the background while "When In Use" authorization is selected:
- Adds the
Braze.Location.Configuration.allowBackgroundGeofenceUpdates
property to toggle whether geofences should be updated in the background.- When using this setting, verify that you have enabled the Location updates background mode.
- Adds the
Braze.Location.Configuration.distanceFilter
property to configure the minimum distance sensitivity for triggering a location update.
- Adds the
- Adds support for the
message_extras
Liquid tag for in-app messages.
8.3.0
8.3.0
Added
- Adds early access for a third alternative repository which provides all Braze modules as mergeable XCFrameworks. For instructions on how to leverage it, refer to the repository README:
Fixed
- Adds a missing privacy manifest for
BrazePushStory
. - Fixes an invalid privacy manifest warning in
BrazeLocation
when submitting to the App Store as a dynamic XCFramework. - Fixes an issue where already enqueued in-app messages would not be removed from the stack after subsequent
.reenqueue
and.discard
display actions. - Fixes an issue preventing retried requests from using an updated SDK authentication token until a new request was scheduled for processing.
- Purchases, custom events, and nested custom user attributes can now include properties with values of any type conforming to
BinaryInteger
(Int64
,UInt16
, etc).- All values will be cast to
Int
before being logged. - This resolves an issue with a bugfix in
7.6.0
.
- All values will be cast to
8.2.1
8.2.0
8.2.0
Added
- Adds support for remotely starting Live Activities via push notifications.
- Adds the following methods to the
liveActivities
module: - This feature requires iOS 17.2 or higher.
- For usage details, refer to the updated Live Activities tutorial here.
- Adds the following methods to the
- Adds return values for existing
liveActivities
methods:launchActivity(pushTokenTag:activity:)
now returns a discardableTask<Void, Never>?
.
- Adds
pushToStartTokens
as a new tracking property type.
8.1.0
8.1.0
Added
- Adds the
is_test_send
boolean value in the in-app message JSON representation. - Adds the
Braze.subscribeToSessionUpdates(_:)
method andBraze.sessionUpdatesStream
property to subscribe to the session updates events generated by the SDK. - Adds public APIs to access
BrazeKit
,BrazeLocation
andBrazeUI
resources bundles:Braze.Resources.bundle
BrazeLocationResources.bundle
BrazeUIResources.bundle
BrazeKit.overrideResourceBundle
andBrazeUI.overrideResourceBundle
have been deprecated in favor ofBrazeKit.overrideResourcesBundle
andBrazeUI.overrideResourcesBundle
.- Re-enables visionOS sample apps requiring SDWebImage in
Examples-CocoaPods.xcworkspace
. SDWebImage for visionOS is now supported when using CocoaPods. - Updated SDWebImage dependency in
BrazeUICompat
to5.19.0+
.
Fixed
- Fixes multiple issues on visionOS:
- Sessions now properly start as expected.
- The click behavior Open Web URL Inside App now properly opens the URL in a modal web view. Previously, the URL would always be opened using the default web browser.
- Braze.Notifications.Payload.targetScene is now defined.
- Braze.URLContext.targetScene is now properly set by the SDK for in-app messages click actions.
- Braze.WebViewBridge.ScriptMessageHandler.init(logClick:logError:showNewsFeed:closeMessage:braze:) is now defined.
- BrazeDelegate.braze(_:willPresentModalWithContext:) now have a default implementation.
- Handling network requests and persisting data properly extend the lifetime of the application for processing.
8.0.1
8.0.0
8.0.0
⚠️ Warning
- This release reports the SDK version as
7.7.0
instead of8.0.0
.
Breaking
- Compiles the SDK using Xcode version 15.2 (15C500b).
- This also raises the minimum deployment targets to iOS 12.0 and tvOS 12.0.
- The
BrazeLocation
class is now marked as unavailable. It was previously deprecated in favor ofBrazeLocationProvider
in 5.8.1.
Added
- Adds support for visionOS 1.0.
⚠️ Rich push notifications and Push Stories may not display as expected on visionOS 1.0. We are monitoring the latest versions for potential fixes.⚠️ CocoaPods is not yet supported by SDWebImage for visionOS. visionOS sample apps requiring SDWebImage have been disabled in theExamples-CocoaPods.xcworkspace
. Refer to the SwiftPM or manual integration Xcode project instead.