Skip to content

[Bug] DynamicLinks callback via TestFlight only works on fresh install #1265

Closed
@jonahgoldsaito

Description

@jonahgoldsaito

[REQUIRED] Please fill in the following fields:

  • Unity editor version: 2019.4.16
  • Firebase Unity SDK version: 8.8.0
  • Source you installed the SDK: .unitypackage
  • Problematic Firebase Component: DynamicLinks
  • Other Firebase Components in use: Auth, FCM, Firestore, Analytics, Crashlytics, Storage
  • Additional SDKs you are using: Nothing external to Unity's
  • Platform you are using the Unity editor on: Mac
  • Platform you are targeting: iOS
  • Scripting Runtime: IL2CPP

[REQUIRED] Please describe the issue here:

I have a dynamic link that points to TestFlight build (though it will point to the AppStore when we launch).

When the dynamic link is visited the first time, and the app is first installed through TestFlight, the msg:
"[appname] pasted from Chrome"
and most importantly, the DynamicLinks.DynamicLinkReceived delegate fires.

If I quit my app, return to Chrome, reload the same link, the app launches, but on this 2nd or any subsequent times,DynamicLinkReceived does not fire and the "pasted from Chrome" msg also doesn't come up.

Same behavior in Safari.

I assume it does work on subsequent loads through the App Store.

Steps to reproduce:

Have you been able to reproduce this issue with just the Firebase Unity quickstarts (this GitHub project)?
Didn't try since it requires pushing to my TestFlight

What's the issue repro rate? (eg 100%, 1/5 etc)
100%

What happened? How can we make the problem occur?

  1. Push a build to Testflight
  2. Add TestFlight public link as destination of new dynamic URL (added manually via console)
  3. Follow link in browser
  4. Install app
  5. Launch app
  6. Quit
  7. Go back to browser and follow same link
  8. "OPEN" Testflight build again
  9. No event fired

If you have a downloadable sample project that reproduces the bug you're reporting, you will
likely receive a faster response on your issue.

Relevant Code:

Honestly there isn't any code beyond what is in the examples:

void Start()
{
      DynamicLinks.DynamicLinkReceived += OnDynamicLink;
}

void OnDynamicLink(object sender, EventArgs args)
{
      var dynamicLinkEventArgs = args as ReceivedDynamicLinkEventArgs;
      string[] ar = dynamicLinkEventArgs.ReceivedDynamicLink.Url.Segments;
      // do more things
}

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions