Search specific term/phrase surrounded by double quotes. e.g. “deep linking”
Exclude records that contain a specific term prefixed with a minus. e.g. Android -Firebase

Android Version History



  • Added new enableLogging method to set preferred logging level



  • Added support for setting Branch API URL through branch.json
  • Improved performance for best case of user agent string fetch



  • Master Release - March 27, 2024
    • Improved start up performance for applications that are using Branch.setIsUserAgentSync(true)



  • Track Meta Install Referrer view-through installs

v5.10.0 ⚠️

WARNING: This release has a known issue with tracking Meta Install Referrers. Please use 5.10.1+ instead.

  • Introduced Meta Install Referrer tracking
  • Added new method for using the native Android share sheet
  • Added additional logging with improved formatting



  • Added new useEUEndpoint method
  • Added support for setting DMA Compliance Parameters
  • Removed v1/profile and v1/logout requests



  • Release Branch 5.8.2 - Jan 26, 2024
    • Removed deprecated field target SDK version from library manifest.
    • Updated Gradle.



  • Release Branch 5.8.1 - Jan 18, 2024
    • Preserve logging to console when SDK is not in debug.



  • Fix a condition where the SDK would not init if the Google service was unavailable to provide the Ad ID.
  • Add a simple interface to echo SDK logs for developer's implementation



  • Fix a race condition where two quickly queued consecutive init/reInit requests would overwrite uri arguments and return no params.
  • Added more verbose trace logging



  • Added check for non-hierarchical URIs when parsing query parameters.



  • Master Release - Nov 9, 2023
    • Updated network debug logging to reduce confusion when client side errors occur rather than attribute to server status.
    • Added exception message to init callback error message.



  • Added additional fields to initialization and event requests



  • Fixed bug that prevented session from initializing after opening a link with gclid
  • Removed remaining TUNE references
  • Factored out queueing code from the Branch object


(September 1, 2023)

  • SDK internal logging behavior has changed. Messages will now be sent through standard channels (ERROR, WARN, INFO, DEBUG, VERBOSE). Before, nearly all logs were sent to INFO.
  • Fixed a minification warning-as-failure thrown by the non-inclusion of the GAID library.
  • Removal of
    • enableFacebookAppLinkCheck
    • getCrossPlatformIds
    • userCompletedAction
    • sendCommerceEvent


(August 11, 2023)

  • Bug fix: Added proguard policy to not break minification builds because of newly added compile only classes.


(August 9, 2023)

  • Updated Samsung Galaxy Store install referrer, to enable import implementation("")
  • Xiaomi referrer also available from Maven Central, import implementation("com.miui.referrer:homereferrer:")
  • Removed old no op enablePlayStoreReferrer
  • Bug fixes:
    • Install referrer tasks are now done in parallel
    • Non-critical JSON exception is now logged as a warning
    • When sharing a link by share sheet, the userCompletedAction event is replaced by v2/event


(July 31, 2023)

  • Removing:
    • Credits end points
    • Jetifier flag
    • Firebase App Indexing
    • Long deprecated public functions:
      ShareLinkBuilder (use BranchShareSheetBuilder instead)
  • Short links can now be made while tracking is disabled.
  • Google Play Billing Library is now optional. To enable, import


(June 30, 2023)

  • Revert the Kotlin version update from 1.8.22 back to 1.6.20.


(June 28, 2023)

  • Added new method for logging a Branch Event with a callback, logEvent(Context context, final BranchLogEventCallback callback).
  • Added proguard consumer rules to prevent R8 warning on Gradle 8 builds.


(June 14, 2023)

  • Added support for easily logging Play Store transactions as Branch Events with logEventWithPurchase.
  • Updated handling of URL query parameters.
  • Updated URI skiplist.


(March 10, 2023)


(March 3, 2023)

  • New feature for plugin SDK developers to defer native Branch Android SDK until plugin notifies when ready
    • To enable, enter this key value pair in your branch.json file inside of your /src/main/assets/
    • "deferInitForPluginRuntime": true
    • This feature is opt in only for now.
    • Requires plugin SDK to implement notification to native modules.
  • Fixes enableLogging feature if set in branch.json
    • "enableLogging": true


(Dec 7, 2022)

  • Fixes a bug with setIdentity not consistently calling v1/profile
  • Adds switch to prioritize referrer links for attribution over preinstall metadata
    • To enable, call setReferringLinkAttributionForPreinstalledAppsEnabled before Branch.getAutoInstance(this)


(Oct 25, 2022)

  • debug field is now included in all events, previously only on init requests
  • source field moved from data block to top level in v1 url requests


(Oct 3, 2022)

  • For user agent string, move webview instance to ui thread on init
    • To use this method to obtain the user agent string, set Branch.setIsUserAgentSync(true)
    • Static WebSettings is the default


(Sep 30, 2022)

  • Using alternative method to obtain user agent through WebView instance with static as fallback


(Aug 29, 2022)

  • Updated compile and target API to 32, updated build tools
  • Changed POM scope for firebase-appindexing from "runtime" to "compile"


(Aug 15, 2022)

  • Sending app_store install source on requests
  • Added default retry cap for no-internet request queues


(Aug 8, 2022 )

  • Removed unused IMEI strings and references in the Java
  • Change setIdentity call to immediately save provided identity string instead of waiting for network call. Additionally it is sent as part of v1 open and install requests.


( Jun 15, 2022 )

  • Added methods to generate Branch QR codes
    • getQRCodeAsData
    • getQRCodeAsImage
  • Added support for additional store referrer APIs. No code needed other than to import the store's referrer API artifact into your app
    • Huawei App Gallery
    • Samsung Galaxy Store**
    • Xiaomi GetApps**
    • ** Contact your Samsung or Xiaomi representative for assistance with obtaining their store referrer API artifact.
  • Upgraded Google Install Referrer API
  • Updated Android minimum SDK to 21
  • Replaced JCenter with mavenCentral in allprojects.repositories


( Jun 1, 2022 )

  • Fixes an issue with previously set randomly generated configuration values being skipped over.

v5.1.4 v5.1.4 ⚠️

( Apr 29, 2022 )
WARNING: This release has a configuration issue that incorrectly marks opens as reinstalls. Please use 5.1.5+ instead.

  • Fix retry logic for network requests when there is no internet availability.
  • Replace "identity_id" with "randomized_bundle_token" and "device_fingerprint_id" with "randomized_device_token"


( Mar 25, 2022 )

  • Collect and persist GCLID
    • A custom expiration window for the GCLID can be set by public void setReferrerGclidValidForWindow(long window)
  • Credits related methods and fields marked as deprecated
  • Fixed IllegalAccessException on API 31, using DisplayManager instead of WindowManager


( Mar 10, 2022 )

  • Update payloads to include generated UUID when valid GAID is retrieved, replacing hardware ID. UUID is persisted locally.
  • Fix bug which spammed the log for no-op event retry attempts when tracking is disabled.


( Feb 18, 2022 )

  • Fix NPE if intent is null while getting referrer


( Feb 9, 2022 )

  • Added BranchPluginSupport class with deviceDescription() method. Will be used by the AdobeBranchExtension to pass device data.
  • Resolves timeout and non-initialization issues introducing a connect timeout, and retrying init requests.
    • Possible behavior change is with the increased timeout, any operations awaiting these requests may see longer timeouts.
    • To set the timeouts:
      • public void setConnectTimeout(int connectTimeout)
      • public void setTimeout(int timeout) (Time is in milliseconds)


( Nov 10, 2021 )

  • Bug fixes: IntegrationValidator (ConcurrentModificationException, Decoding Resource Strings)


( Oct 15, 2021 )

  • Bug fixes: improper shutdown of resource, multiline server responses
  • Fix crash when using Branch JSON config


( Oct 1, 2021 )

  • Always include Google Play Store referrer in install
  • IntegrationValidator now recognizes String resources
  • Fix edge case that could cause a stack overflow


( Sep 21, 2021 )

  • Avoid NPE when Branch reference in BranchPostTask is garbage collected


( Aug 23, 2021 )

  • Avoid NPE when Activity reference is null


( Aug 4, 2021 )

  • Collect initial_referrer


( May 20, 2021 )

  • Avoid potential NPE
  • When reinitializing session without an expected intent flag, invoke callback with error rather than ignoring it.


( April 29, 2021 )

  • Fix bug that can block UI thread
  • Fix race condition between session initialization requests invoked by client and SDK
  • Fix network request timeout control


( March 1, 2021 )

  • Patch: fix getSdkVersionNumber() API in v2 events


( February 26, 2020 )

  • Add INITIATE_STREAM and COMPLETE_STREAM standard events
  • Fix getSdkVersionNumber() API


( February 17, 2021 )

  • Add API to pass hashed partner parameters (Facebook integration)
  • Fix bugs in the networking pipeline of CPID and LATD requests
  • Fix bug preventing callback invocation when url creation request times out
  • Add support for static SKD configuration via branch.json file
  • Deprecate SDK initializers with isReferrable flag


( Dec 9, 2020 )

  • Reduce calls to v1/close
  • Fix validator errors
  • Fix setNetworkTimeout(...) API


( 10 Aug 2020 )

  • Upgrade Play Referrer library


( 22 Jul 2020 )

  • Remove content discovery


( 08 Apr 2020 )

  • Refactor/deprecate test and debug modes
  • Report google advertising ID when in test mode
  • Set pre-install data via install referrer library


( 17 Mar 2020 )

  • Added documentation with 1:1 session builder replacements of deprecated initSession methods
  • Added disableAdNetworkCallouts(boolean) API


( 06 Mar 2020 )

  • Block self-initialization.
  • Delay initialization and block self-initialization until user removes the delay or timeout passes.
  • Collect OAID from Huawei's new devices that don't support google mobile services anymore
    Introduce sessionBuilder.
  • Fix reInitSession when intent contains the extra "branch" and no "branch_force_new_session".
  • Replace initSessionForced with Branch.bypassWaitingForIntent(true).
  • Remove potential NPE in CPID API.


( 30 Jan 2020 )

  • Accommodate single activity architecture/navigation component (reintroduced "SDK already initialized" error and ensured reInitSession() only fires when intent contains branch data).
  • Do not self-initialize if SDK is bundled with a plugin.


( 23 Jan 2020 )

  • Hotfix revert CPID and LATD listener paths to the newer version.
  • Replace "SDK already initialized" error with logs and return latest referring parameters.


( 22 Jan 2020 )

  • Remove install referrer broadcast receiver, bundle Play Install Referrer Library in the SDK.
  • Ensure callbacks are invoked in Kotlin (non-null listeners are passed).


( 19 Dec 2019 )

  • Make attribution window optional for LATD requests.


( 13 Nov 2019 )

  • Remove initialization race conditions.
  • Do not auto-initialize sessions, make calling initSession a mandatory step required of Branch SDK users (officially this was already implied).
  • Overload reInitSession with different callbacks and start advertising it to users as the official way to handle session reinitialization in cases where activity is in foreground and is being reopened.
  • Make sure carrier field does not contain an empty string, omit the field instead.


( 30 Oct 2019 )

  • Removed fabric artifacts.
  • Closed field gaps with TUNE SDK.
  • Fixed sharing links on devices without a touchscreen.
  • Configurable CDN endpoint.
  • Refactored codebase to follow Android Studio project structure.
  • Decoupled LifecycleObserver from main class.


( 07 Oct 2019 )

  • Support for Fire OS.
  • Do not collect advertising ID when limit ad tracking is enabled.
  • Reset advertising ID and limit ad tracking values every time app becomes visible.


( 26 Sep 2019 )

  • Added support for Cross-Platform ID (CPID) & Last attributed touch data (LATD).


( 18 Sept 2019 )

  • Added new customer_event_alias setter method; removed standard event type: customer_event_alias
  • Added IMEI collection code option


( 09 Aug 2019 )

  • Switched to using Android X from the Android Support Library
  • Added new standard event type: customer_event_alias
  • Implemented support for pre-install analytics
  • Added the option to set a custom base URL



  • Allow short link creation while privacy is enabled



  • Hardware ID is now included in every request
  • Cleaned up compiler warnings, and updated tools to the latest versions



  • Added support for push notifications while the application is in the foreground



  • Ensure that Google Aid is present in all requests
  • Refactored how Debug works, including making sure all Debug messages can be turned off if not in debug mode.
  • Added new standard events for parity with Tune
  • Fixed a synchronization issue around the event queue saving preferences while in a synchronized block.



  • Fixed a TLS1.2 issue with HttpsURLConnection on API Level 16~19 devices
  • Added SDK version tag to the Android SDK to aid Google Scanning APIs
  • The SDK now supports deep linking with enableForcedSession() for apps which choose to finish the Launcher Activity within onStart() method