github BranchMetrics/ios-branch-deep-linking-attribution 4.0.0-beta.3

pre-release3 hours ago

Release Note (4.0.0-beta.3)

v.4.0.0-beta.3

Upgrade instructions: https://help.branch.io/developer-hub/ios-sdk-4-integration

  • Added BranchConfiguration object which holds every setting that used to be a Branch setter: API and CDN URLs, EU endpoints, log level and logging callback, request tracing callback, network timeout, retry count and interval, third-party API wait time, attribution level, DMA parameters, allowed schemes, URL patterns to ignore, request metadata, pasteboard check on install, App Clip app group and deep link debug params.
  • Added new initialization API +[Branch initialize:] to initialize Branch SDK using BranchConfiguration. The initSession… family is removed.
  • Added +[Branch updateConfiguration:] to change the configuration after initialization.
    • Removed the old setters:
      -- setBranchKey:
      -- setUseTestBranchKey:
      -- useEUEndpoints
      -- setAPIUrl:
      -- setSafetrackAPIURL:
      -- setNetworkTimeout:
      -- setMaxRetries:
      -- setRetryInterval:
      -- setSDKWaitTimeForThirdPartyAPIs:
      -- addAllowedScheme:/setAllowedSchemes:
      -- setUrlPatternsToIgnore:
      -- checkPasteboardOnInstall
      -- setAppClipAppGroup:
      -- setDeepLinkDebugMode:
      -- setCallbackForTracingRequests:.
    • The Branch Key is no longer read from Info.plist. Pass it to BranchConfiguration.
  • Removed getInstance, getInstance: and getTestInstance. Use +[Branch sharedInstance].
  • New deep link APIs replace initSession…, continueUserActivity: and handlePushNotification::
    • requestDeepLinkData:callback:
    • requestDeepLinkDataWithLaunchOptions:callback:
    • requestDeepLinkDataWithURL: and requestDeepLinkDataWithURL:sourceApplication:annotation:
    • requestDeepLinkDataWithUserActivity:
    • requestDeepLinkDataWithUserInfo:
    • requestDeepLinkDataWithSceneOptions:scene:callback:
    • requestDeepLinkDataWithScene:openURLContexts: and requestDeepLinkDataWithScene:userActivity:
  • Added manual open control. BranchConfiguration.automaticOpenEvents (default YES).
  • Added API sendOpen. If BranchConfiguration.automaticOpenEvents is set to NO, use this API to send OPEN events manually.
  • Link creation is consolidated into the new BranchLinkBuilder class, which takes BranchLinkProperties. Remove all overloaded versions of following APIs -
    • getShortURLWithLinkProperties:
    • getLongURLWithLinkProperties:
    • getSpotlightURLWithParams:
    • getShortURL…
    • getLongURL…,
    • getLongAppLinkURL…
    • getSpotlightUrlWithParams:
  • Added Swift async wrappers via NS_SWIFT_ASYNC_NAME to APIs.
  • Replaced setIdentity: / setIdentity:withCallback: with setUserAlias:completion:.
  • Removed setTrackingDisabled: and trackingDisabled. Use setConsumerProtectionAttributionLevel: with BranchAttributionLevelNone, and check with +[Branch attributionLevelNone].
  • Replaced setDMAParamsForEEA:AdPersonalizationConsent:AdUserDataUsageConsent: with the BranchDMAParameters class and setDMAParameters:.
  • Removed limitFacebookAttribution and disableAdNetworkCallouts:.
  • Raised the minimum iOS and tvOS deployment target to 15.0 (BranchSDK.xcodeproj, Package.swift, BranchSDK.podspec). Xcode 27 refuses to build the Xcode project or a CocoaPods integration below 15.0.

Don't miss a new ios-branch-deep-linking-attribution release

NewReleases is sending notifications on new releases.