5

Can I have more than one application claim the same URL for Universal Links or App Links?

What occurs on the end user device when such a (developer permitted) collision occurs?

  • Is the experience the same on Android and iOS?
  • Will there be a prompt, allowing the user to pick which app to open the deep link URL in?
4

No, a collision is not possible.

The way that app links and universal links work is

  1. Your web page contains a URL to a file on your web server
  2. The file contains the information that tells the device what app to open.

The link might look like this: https://<domain>/apple-app-site-association

The file might look like this:

"applinks": {
    "apps": [],
    "details": [
        {
            "appID": "9JA89QQLNQ.com.apple.wwdc",
            "paths": [ "/wwdc/news/", "/videos/wwdc/2015/*"]
        },
        {
            "appID": "ABCD1234.com.apple.wwdc",
            "paths": [ "*" ]
        }
    ]
}

So in order to create an app association using of of these links, you have to own a server that matches the domain in the URL.

You can only put files on web servers that you own, of course; nobody else can (unless you have given them permission or they have hacked you). So whoever owns the web server also owns the app association. No collisions.

3
  • So in other words, if I offer a free and paid version of my app, the URL of each app must be different and therefore can't overlap features? – halfbit Dec 6 '16 at 14:51
  • I want a URL to open whichever app is installed. Free if that is, paid, if that is. – halfbit Dec 6 '16 at 14:51
  • The app association can include multiple apps. If the user has more than one installed, the phone will display a dialog allowing them to choose. In your case I think they would have only the one app (free or paid, not both) so you should be OK. – John Wu Dec 6 '16 at 17:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.