Firebase dynamic link not opening the app iOS
I have developed & installed an iOS app locally on my device.
And have set custom scheme in the info.plist as
Set associated domains as weel:
Created dynamic link on firebase as:
https://<myapp>.app.goo.gl/?link=http://<mysite.com>/&ibi=<app bundle id>&ius=mydlink&ifl=https://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id%3D<app store id>%26mt%3D8&pt=<app store id>
When I open or click on dynamic link, it opens app page in the “App Store” app and not opening app itself though its installed.
What am I missing here?
- Authenticating with Database Secrets in Firebase SDK v3?
- Handling Image Store to Firebase with Swift
- Why I do not get push notifications from Firebase in Swift?
- FIRDatabaseQuery: how to do an inner join
- Use more than one Firebase database in single app - Swift
- Ensuring Async Action Has Completed in Firebase
6 Solutions Collect From Internet About “Firebase dynamic link not opening the app iOS”
If you are on iOS 9, universal links will be used. Universal links don’t work in a lot of cases, like:
- If you use a simulator
- If you try to open the link directly in safari on a device (typing it into the address field in the browser)
I spent a lot of time trying this and could never get it to work on a simulator in a reliable way. What I end up doing is emailing the link to me and opening it from Inbox. Then it works every time!
I’m sorry for the late reply – I hope your issue has been resolved and that this is helpful to others who may be experiencing the same problem.
There could actually be one or more issues here for iOS 9+; Dynamic Links relies on Apple’s Universal Links to open the app on iOS 9+ and these suggestions are aimed at resolving issues with Universal Links and Firebase and have nothing to do with the SDK directly.
- Verify that the assoc file is correct at https://app_id.app.goo.gl/apple-app-site-association – it should look similar to https://maps.app.goo.gl/apple-app-site-association but with only one element in “details.”
- As pointed out by another answer, verify that your team ID is properly set in the Firebase console.
- If you’ve long-pressed the link and then clicked “Open in Safari” or you have clicked the “goo.gl>” button on the status bar of your app after the app opens via a Universal Link, then iOS defaults to opening Universal Links in Safari. This can be fixed by pulling down on the paged opened in Safari and clicking “Open in App” (or similar) on the smart banner.
The “ibi” parameter is not involved in opening the app in a post-install click on iOS 9+, but is in prior versions when the “ius” param is not set.
Regarding iOS 8, can you try running the app and then clicking a link after the app is installed? On versions prior to iOS 9, you can test by copy/pasting the link into safari.
Firebase dynamic links were not working for us (on iOS9 where they use universal links) due to a problem in Firebase’s assumptions during setup. Here’s how we fixed the problem on our app:
Firebase asks for your “Team ID” when adding your iOS app to Firebase Console Project Settings, and it assumes that your unique app ID will be in the format TeamID.com.foo.bar
However, in our case, that was NOT our unique app ID. When I looked at our provisioning profile (on developer.apple.com I found our provisioning profile and clicked “edit”), I saw that our unique app ID was actually SomethingElse.com.foo.bar
I had to go into Firebase Console and enter that “SomethingElse” in the spot where it asked for Team ID, even though that was NOT our team ID. Once I made that change, Firebase Dynamic Links started working correctly.
It appears Firebase is making an assumption that your unique app ID will always start with your Team ID, which is apparently not always the case.
Note that changing your Team ID can take a significant amount of time to take effect. You can see that the change has happened by checking the appropriate link for your app_id (https://app_id.app.goo.gl/apple-app-site-association).
Make sure you have a Team Id set in the firebase console for you app. (you will then need to download and import the .plist file).
This fixed the problem for me.
After integrating Firebase Dynamic links, the sample link started working immediately on a device with iOS 8. For iOS 9 devices Universal links mechanism is used, as mentioned by other answers. This means Apple needs to update the entitlement data used to verify deep link dual authentication. This may take 48 hours, according to Apple’s App Search API Validation Tool.
There are more Universal links troubleshooting tips here.
I experienced same problem. Interestingly if you open the dynamic link in Chrome, app starts directly and successfully. But in Safari always it tries to open AppStore although the app is installed. I have no idea why Safari doesn’t work in this case.
- Store in NSUserDefaults
- How to change button title from table static cells?
- CLLocationManager didUpdateToLocation checking failing
- iOS 7 UINavigationBar appearance not working first time…
- xcode – How do I keep views locked into portrait mode, but still allow one view to rotate?
- Swift NSString function syntax usage
- UIScrollView wrong offset with Auto Layout
- Base64 Decoding in iOS 7+
- In this CGBitmapContextCreate, why is bytesPerRow 0?
- Xcode bot install link request time out
- Draw text and add to a UIImage iOS 5/6
- Using GLKMath from GLKit in Swift
- Undocumented NSURLErrorDomain error codes (-1001, -1003 and -1004) using StoreKit
- Incompatible pointer types Xcode
- What is the advantage of a lazy var in Swift