Supporting same domain on two different apps supporting universal links..?

Apple App Site Association file example

{
    "applinks": {
        "apps": [],
        "details": [{
            "appID": "D3KQX62K1A.com.example.photoapp",
            "paths": ["/albums"]
            },
            {
            "appID": "D3KQX62K1A.com.example.videoapp",
            "paths": ["/videos"]
        }]
    }
}

Important: The order of the dictionaries in the array determines the order the system follows when looking for a match. The first match wins, allowing you to designate one app to handle specified paths within your website, and another app to handle the rest.

References: https://developer.apple.com/documentation/uikit/core_app/allowing_apps_and_websites_to_link_to_your_content/enabling_universal_links


In order to supporting Universal Links with single domain on two different apps you need to make changes in your existing apple-app-site-association file, at https://{domain}/apple-app-site-association.

For Single App Support

For single application support it's look like this

{
    "applinks": {
        "apps": [],
        "details": [
            {
                "appID": "1234ABCDE.com.domain.myapp",
                "paths": ["*"]
            }
        ]
    }
}

For Multiple App Support

For multiple application support, you need add one more key-value pair in details array of applinks in apple-app-site-association. It's look like this

{
    "applinks": {
        "apps": [],
        "details": [
            {
                "appID": "1234ABCDE.com.domain.myApp",
                "paths": ["*"]
            },
            {
                "appID": "1234ABCDE.com.domain.mySecondApp",
                "paths": ["*"]
            },
            {
                "appID": "1234ABCDE.com.domain.myThirdApp",
                "paths": ["*"]
            }
        ]
    }
}

General Format of apple-app-site-association file

The file looks like this:

{
"applinks": {
    "apps": [ ],
    "details": [
        {
            "appID": "{app_prefix}.{app_identifier}",
            "paths": [ "/path/to/content", "/path/to/other/*", "NOT /path/to/exclude" ]
        },
        {
            "appID": "TeamID.BundleID2",
            "paths": [ "*" ]
        }
    ]
}
}

References

How to support Universal Links in iOS App and setup server for it?


I found the solution, its pretty simple though. My problem was that my first app was supporting all the pages by stating

"*" in the paths section of apple-app-site-association file. Now all I have to do is add NOT in front of one of the paths which I wanted my second app to handle.

like "NOT /cabs". I haven't tested it yet if this works or not. I will post an update as soon as I am done with it.