iOS Version History
v3.6.5
(2024-Oct-23)
- Removed on-disk caching and replay of server request objects.
v3.6.4
(2024-Oct-04)
- Added 'branch_sdk_request_unique_id' and 'branch_sdk_request_timestamp' to post params of all the SDK requests.
v3.6.3
(2024-Sep-24)
- Fix for duplicate events created from archived request queue on disk.
v3.6.2
(2024-Sep-09)
- Fix for issue which was sending an extra open request on cold app launch.
- Updated previous fix for cold link launch when using deferred initialization and an AppDelegate only app.
v3.6.1
(2024-Aug-20)
- Fixed issues where
external_intent_uri
was incorrectly set in certain cases.
v3.6.0
(2024-Aug-2)
- Fixes intermittent issue with universal links on cold opens.
v3.5.1
(2024-Jul-26)
- Minor logging improvement.
v3.5.0
(2024-Jul-23)
- Add additional logging.
- Update setRequestMetadata signature to use NSString.
v3.4.4
(2024-Jun-10)
- Fix for rare case where Branch events were duplicated.
- Fixed script in "Run Script" phase of static framework targets.
v3.4.3
(2024-April-23)
- Fix push notifications when app is backgrounded and the app uses
handlePushNotification
instead ofhandleDeeplink
.
v3.4.2
(2024-April-16)
- Fix tvOS build when integrating with SPM.
v3.4.1
(2024-April-3)
- Fix cold link launch when using deferred initialization and an AppDelegate only app.
- Fix CocoaPods privacy manifest collision.
- Fix error recovery serialization.
- Update logs with more appropriate log levels.
- Pass back underlying Network NSErrors that cause the SDK to give up.
v3.4.0
(2024-April-1)
- Added support for setting the Branch API base URL through the
branch.json
file.
v3.3.0
(2024-Feb-19)
- SDK behavior change to fix a race condition when opening a closed app with a link. In some apps, this may improve link reliability.
- When opening a closed app with a link, the Branch SDK will no longer attempt to merge the app open and link arrival lifecycle events. Apps will now get called on "app open" and on "link arrival", which are often very close together. If your app ignores callbacks with no link data, then this change should be transparent. If your app takes action on every branch callback, you may need to account for this change in behavior.
v3.2.0
(2024-Feb-15)
- Add support for setting DMA compliance parameters.
- Update logging to allow a custom callback so clients may reroute Branch Logs to their logging infrastructure.
- Update logging to use os_log private by default.
- New custom server URL API. When set the SDK will always use this endpoint, the Privacy Manifest should be edited to match.
- Update Cocoapods, frameworks and tests to use SPM layout.
- Fix crash when using pre-built xcframework on iOS 12.
- Improve Swift compatibility by removing API variations that differ only by an NSError.
v3.0.1
(2023-Nov-28)
- Fix issue preventing organic open on app foreground when the app is already running in the background.
v3.0.0
(2023-Oct-10)
- Add a Privacy Manifest for the Branch SDK. App developers may need add an App level Privacy Manifest for data they collect and pass into the Branch SDK.
- Known Issue: When using cocoapods without the use_frameworks! option, the build can fail with a duplicate privacy manifest error. Workaround is to manually merge privacy manifests.
- Add support for a tracking domain. When Ads tracking is enabled, the SDK sends event calls to a tracking domain.
- iOS 12 is now the min version
- Xcode 15 is now the min version
- Fix short URL creation via a sharesheet when tracking is disabled
- Add macCatalyst checks
- SetIdentity and Logout are now handled device side
- Remove deprecated code and some data minimization
- Cross Platform ID
- Credits and Referrals
- Close requests
- Facebook App Links and related code.
- pre-iOS 14 tracking status. This is always false on recent iOS versions.
- Tune data upgrade check
- v1 Branch Events, all events are now v2 Branch Events
- pre-iOS 10 locale support
- Device carrier. This was used for fraud analysis, but is no longer available on new iOS versions.
v2.2.1
(2023-Sep-14)
Branch iOS SDK 2.2.1 adds parameter for current SKAN 4.0 Window in /v1/open and /v2/event requests.- SDK-1982 - SKAN Simplification DB updates
v2.2.0
(2023-June-22)
Branch iOS SDK 2.2.0 adds the ability to include developer ID in installs and a new method to change the Branch API base URL.
- SDK-1944 - Add Developer ID to v1/install
- SDK-1755 - Remove old Apple Search Ads APIs
- SDK-1934 - Expose a public method to change the Branch API base url
- Updated logEventWithPurchase() to easily log in-app purchases as Branch Events
v2.1.2
(2023-April-18)
Branch iOS SDK 2.1.2 adds additional support for Meta AEM links. It also includes some bug fixes and debugging improvements.
- SDK-1796, SDK-1797, and SDK-1906 - additional support for Meta AEM links
- SDK-1908 - Xcode 14.3 warns on C functions with empty parameter lists
- SDK-1747 - macCatalyst SKAdNetwork crash on older devices
- SDK-1893 - SKAdNetwork additional logging and safety checks
v2.1.1
(2023-March-28)
Branch iOS SDK 2.1.1 contains changes to how URL query parameters, like GBRAID and GCLID, are parsed and stored as well as a small fix for Mac Catalyst.
- [SDK-1747] Added if available check for SKAN on Mac Catalyst
- [SDK-1800] Extract GBRAID & GCLID from Branch referred uri/url
v2.1.0
(2023-March-04)
Branch iOS SDK 2.1.0 contains improvements to testing and plugin support (Unity, RN, etc). Most clients will see no change.
SDK-1831 - Improved branch.json support
Support for logging via enableLogging.
Removed old Apple Search Ads support.
Support for deferred SDK initialization. This allows improved plugin lifecycle support.
SDK-1802 - Fix tvOS warnings.
SDK-1774 - Update Branch TestBed UI.
v2.0.0
(2023-Feb-09)
Branch iOS SDK 2.0.0 fixes longstanding issues with the umbrella header and project layout. Although the code is largely unchanged, this changes the SDK name from Branch
to BranchSDK
. Clients will need to update import statements. For example in Swift import Branch
should be import BranchSDK
- SDK-1329 - SDK umbrella header fix
- SDK-1758 - Add gbraid timestamps to calls
- SDK-1663 - Revert thread queue priority to avoid a potential priority inversion
v1.45.2
(2022-Dec-16)
- SDK-1741 Fix iOS 15.4 callback handling when SKAN is enabled
v1.45.1
(2022-Dec-05)
- SDK-1724 Branch SDK returns an error
SKANErrorDomain Code=10
in initSession function - Fix
v1.45.0
(2022-Nov-28)
- SDK-1659 SKAN 4.0 Support
- Support for coarse-grained conversion value
- Support for multiple conversion window
- Support for locking conversions in SKAN windows
- Added calls to updatePostbackConversionValue on Branch Open events
v1.44.0
(2022-Oct-19)
- SDK-1658 Add Support for
VIEW_AD
,INITIATE_STREAM
,COMPLETE_STREAM
and all V2 Events as Standard events - SDK-1480 [iOS 16] UIPaste Support for NativeLink Flow
- Added API
passPasteItemProviders
- Added class
BranchPasteControl
- Added API
- Requires Xcode 14+
- Minimum target deployment updated to iOS 11.0
- Known Issues:
- Integration with Carthage fails for tvOS.
v1.43.1
(2022-June-24)
- Updates to gbraid handling
- Updated
podspec
to includeLinkPresentation.framework
v1.43.0
(2022-June-17)
- Added new methods to create Branch QR codes
- Support for SKAN 3.0
v1.42.0
(2022-May-26)
- Fixed
bnc.lt
from showing in the share sheet - Added helper method for adding
LPLinkMetadata
to share sheets
v1.41.0
(2022-Feb-04)
- Added API for Adobe Launch plugin support.
v1.40.2
(2021-Oct-29)
- Fix serialization issue.
v1.40.1
(2021-Oct-14)
- Workaround server side issue with inconsistent response payload.
v1.40.0
(2021-Oct-12)
- Add support for
LPLinkMetadata
on share sheets. - Use
NSKeyedUnarchiver secureCoding
on iOS 12+ - Update
Crashlytics
toFIRCrashlytics
- Rename
device_fingerprint_id
andidentity_id
to better reflect function. Fingerprinting was removed long ago. - Remove credit related methods. The feature has been deprecated and the supporting services will be decommissioned.
v1.39.4
(2021-May-10)
- Add SEO App Attribution Support
- Add support for deferred deep links via pasteboard.
- https://help.branch.io/developers-hub/docs/ios-advanced-features#nativelink-deferred-deep-linking
v1.39.3
(2021-May-10)
- Add timeout to Apple attribution token. Some users are reporting the call can hang.
v1.39.2
(2021-March-26)
- Add
handleATTAuthorizationStatus
method to monitor ATT prompt performance. - Pass the
AppTrackingTransparency
authorization status from the callback ofATTrackingManager.requestTrackingAuthorization
.
Before prompting the user, check thatATTrackingManager.trackingAuthorizationStatus
isnotDetermined
. - https://help.branch.io/developers-hub/docs/ios-advanced-features#track-att-opt-in-and-opt-out
v1.39.1
(2021-March-10)
- Fix
podspec
AdServices.framework
issue. This addresses a crash on launch for older iOS versions. - First time opt-in indicator. Reduces load on the server.
v1.39.0
(2021-March-4)
- Check
AppTrackingTransparency
status. The Branch SDK does not prompt the user, however, it does check what the current ATT authorization status is. This provides more clarity into why IDFA is not authorized. - Add support for
AdServices.framework
and the Apple Attribution Token. ForCocoapods
,AdServices.framework
is included by default. For other integration options, you should include the AdServices.framework. - Reduce default SKAN timeout per FB request.
- Remove a debug log message to address the security scanner false alarm.
v1.38.0
(2021-February-10)
- Switch to semantic versioning.
- Add a static xcframework. The pre-built static xcframework is Branch_static.zip attached to the github release page. Note that tvOS does not support static frameworks.
- Remove some non-inclusive terms. The method
addWhiteListedScheme
is now namedaddAllowedScheme
The methodsetWhiteListedSchemes
is now namedsetAllowedSchemes
- The method to obtain last attributed touch data now includes an NSError in the completion block.
(void)lastAttributedTouchDataWithAttributionWindow:(NSInteger)window completion:(void(^) (BranchLastAttributedTouchData * _Nullable latd, NSError * _Nullable error))completion;
- Remove old data transfer code. Addresses a potential crash.
v0.37.0
(2021-January-21)
- Remove some non-inclusive terms. The method
blackListURLRegex
is now namedurlPatternsToIgnore
. - Add API to attach Facebook partner parameters to Branch install, opens and events. See Facebook's documentation on advanced matching for details on valid parameters.
- Add support for
xcframework
.Branch.xcframework
has replacedBranch.framework
. iOS and tvOS are both included in the samexcframework
. The pre-builtxcframework
is Branch.zip attached to the github release page. - Carthage integrations require the
--use-xcframeworks
flag. This feature is not yet in the general carthage release, you will need to install carthage from source. - Thread safety improvement to server performance metrics.
v0.36.0
(2020-November-11)
- Enable an App Clip to share data with the Full App This optional feature requires the client to setup an app group and provide the app group id to the Branch SDK.
- Address security scanner warnings by removing variadic log methods, log to file and programmatic breakpoints. If you are directly using these Branch debug and log features, you will need to update your code.
- Support SDK configuration via json file. This improves support for platforms such as React Native and Cordova.
- Reduce SDK network traffic by omitting close calls by default.
- Log the server request id to help debug request issues.
v0.35.1
(2020-October-06)
- Removed check for install data if tracking is disabled.
v0.35.0
(2020-August-24)
- Removed default inclusion of
AdSupport.framework
in Cocoapods. - Added support for Swift Package Manager.
- Added Apple SKAdNetwork support,
- Minimum supported version is now iOS 9+.
- Xcode 12+ is now required.
v0.34.0
(2020-June-1)
- Added tvOS support
- Clarified LATD API description
- Removed CircleCI
- Corrected error message when disable tracking is enabled.
v0.33.0
(2020-April-9)
- Logging API updates
- Deeplink handler with UIScene
- Xcode 11+ is now required. Apple will no longer accept submissions from older versions.
v0.32.0
(2020-March-26)
- Add new method
disableAdNetworkCallouts
. - BranchEvent logEvent with callback.
- Remove cert pinning.
- Replace MD5 with SHA256 for caching objects. Prevents security scanner false alarms.
- Restore previous behavior of always returning on main.
v0.31.4
(2020-Feb-03)
- Add sharesheet option to override placeholder url. This allows more control over the iOS 13 preview header.
- Fix a compilation warning.
v0.31.3
(2019-Dec-30)
- Change type of field
cpu_type
.
v0.31.2
(2019-Dec-18)
- Change type of field
cpu_type
.
v0.31.1
(2019-Dec-11)
- Fix first run issue with logEvent.
v0.31.0
(2019-Dec-11)
- Add fields for Tune compatibility.
- Carrier name, connection type, cpu type.
- Add fallback for disabled module support. C++ compatibility.
- BranchEvent safety improvement.
- Add APIs for plugin support.
v0.30.1
(2019-Dec-3)
- Hotfix to call FB SDK on the main thread.
v0.30.0
(2019-Nov-13)
- Update Apple Search Ads behavior and API.
- Last attributed touch API now accepts attribution window.
- Add blacklist URL configuration.
- Removed deprecated Safari cookie integration.
- Fix race condition in SDK initialization.
- Fix Carthage Swift build from source.
- Fix Swift getInstance nullability.
- Fix object serialization error.
v0.29.3
(2019-October-16)
- Added a check for previous Tune data; when found, data's status is set to "updated" to be used in determining new vs existing users.
v0.29.1
(2019-October-04)
- Fix nullability warnings.
v0.29.0
(2019-September-26)
- Added support for Cross-Platform ID (CPID) & Last Attributed Touch Data (LATD).
- Fixed a race condition on slow startup.
- Fixed a rare Keychain deadlock.
v0.28.1
(2019-September-06)
- Remove deprecated
UIWebView
and replace withWebKit
. - Add Standard Event customer alias field.
- Cocoapods adds
iAd
by default. - Remove deprecated Fabric integration.
- Remove Apple Search Ads debug which is redundant with Apple's existing debug.
- Collect install receipt.
- Fix bug with proxying network calls.
- Fix bug with network retry.
v0.27.1
(2019-June-03)
- Fix a potential crash due to invalid key type
v0.27.0
(2019-April-24)
- Allow short link creation while privacy is enabled.
- Fix Swift example and cleanup release scripts.
v0.26.0
(2019-March-26)
- New standard events for improved Facebook and Tune.
- Improve handling of non-branch links while app is in foreground.
- CircleCI support.
- Carthage prebuilt binary is now built with Xcode 10 and is no longer compatible with old Xcodes.
v0.25.11
(2019-January-18)
- Improved referral documentation.
- Disabled certificate pinning by default.
Updated 30 days ago