web-branch-deep-linking-attribution icon indicating copy to clipboard operation
web-branch-deep-linking-attribution copied to clipboard

setBranchViewData only works once

Open Ryanjso opened this issue 2 years ago • 2 comments

Describe the bug

I'm having a bug setting data on a branch journey. The setBranchViewData appears to only actually set the data the first time it is called.

Steps to reproduce

  1. When a user navigated to a different page (react navigation) I call
console.log('I get called every time the page changes, confirmed')
branch.setBranchViewData({
            data: {
                $deeplink_path: deeplinkPath,
            },
        })
  1. when someone clicks the CTA in the journey, I read the journey_link_data and the $deeplink_path is always the first one I set, and this is apparent when it opens my iOS app and sends me to the first page I had set in the web app.

Expected Behavior

The branch journey data should be updated every time I call setBranchViewData.

Additional Information/Context

No response

SDK version used (window.branch.sdk)

^2.71.0

Environment

chrome ios

Ryanjso avatar Dec 10 '22 01:12 Ryanjso

I ended up finding this from 4 years ago that explains journeys need to be closed and reopened to change the data. This could be documented better in the branch docs. It also is kinda awkward, as it goes away and comes back on every page change.

Ryanjso avatar Dec 10 '22 02:12 Ryanjso

+1 for what Ryanjso mentioned. This is something we actively use to update the branch links with some dynamic data that can change over the same session