4

I have went through the Firebase Tutorial, I have implemented Firebase SDK + Dynamic links + Managed my app to support Associated Domains and everything works fine except that the dynamic link doesn't survive the installation.

I have created a dynamic link through Firebase console,

  1. When app already installed, everything works fine. The dynamic link launch my app with the relevant content

  2. When my app isn't installed, the dynamic link open the AppStore as expected and than I'm installing the app through Xcode, but nothing happens I don't receive any content on first launch.

What I did:

  1. Make sure that the Scheme URL in Xcode -> Targets -> MyAPP -> Info -> URL Types is the same as my app Bundle Identifier.
  2. Make sure that under my FireBaseURL/apple-app-site-association the content is fine: {"applinks":{"apps":[],"details":[{"appID":"MyTeamID.com.foo.bla","paths":["/*"]}]}}
  3. Make sure that I defined in AppDelegate
  4. I have tried do define in the AppDelegate [FIROptions defaultOptions].deepLinkURLScheme = @"com.foo.bla"
  5. Make sure that under associated Domains there are no extra '/' or something. My Supported domain is applinks:FireBaseURL.
  6. Double check that the TeamID that defined in the Firebase console is the same as my application TeamID.
  7. Of-course I have searched a-lot in StackOverFlow without any success to find a solution that worked for me.

Any suggestions?

UPDATE

OK, so I found that somehow I'm using an old version of the Firebase SDK, so I updated the Firebase SDK + start working on the cellular instead of the Wi-Fi and everything works like a charm. Thanks to @Oleksiy Ivanov

KENdi
  • 7,576
  • 2
  • 16
  • 31
MKaro
  • 156
  • 1
  • 9
  • WiFi normally should work. Exception can be if devices connected to WiFi share the same public IP. This will make it harder to achieve match after App installation. Glad it works now! – Oleksiy Ivanov Aug 01 '17 at 20:53

1 Answers1

2

@MKaro Can you add logging to your UIApplicationDelegate method application:openURL:options: and print out is there link passed to your App after first launch? If link is found it will be passed here. When Firebase Dynamic Links failed to retrieve the link, still there will be call to this method with "dismiss" link (this is poorly documented). If you do not see any calls to this method after first launch, this means Firebase Dynamic Links is misconfigured.

Another thing to watch out, Firebase Dynamic Links will check for pending dynamic link only after first install. You have to remove the App to force retrieving the link.

It may be worthwhile to try the first install scenario on WiFI vs Cellular. Type of the network may affect this.

Oleksiy Ivanov
  • 2,454
  • 15
  • 21
  • Hi @Oleksiy, Thanks for you response. I'm not receive anything on that method on first launch, i wrote log there + break point on that method but its not getting called on first launch. This method are getting called only when i have the app already installed on the device and than click on the link. What I'm trying to do is according to FireBase video tutorial, I'm click on the link when the app isn't installed on the phone, re-direct to AppStore but I'm not downloading the app from the AppStore, I'm installing it right away through the Xcode. – MKaro Jul 31 '17 at 21:23
  • Installing from Xcode is fine, this should work. Checking now how to open support case for you. – Oleksiy Ivanov Jul 31 '17 at 22:42
  • @MKaro From our support people: "We would need their email address in order to open a support ticket so I think it would be better to ask them to use our support portal and submit the issue as a bug, which won't count towards their available tickets". – Oleksiy Ivanov Jul 31 '17 at 22:45
  • 1
    Thanks @Oleksiy I have changed the network to Cellular instead of the Wi-Fi and it works! – MKaro Aug 01 '17 at 07:44