在支持通用链接的两个不同应用上支持相同的域..?

时间:2016-02-08 13:37:11

标签: ios iphone branch.io ios-universal-links

我有一个支持通用链接的应用程序,它目前在应用程序商店中。

假设它支持域名www.example.com,因此可以通过此方便地打开通用链接。我们将在相关域中提供applinks:www.example.com。

现在说如果我想发布另一个应用程序,它也支持相同的域名。现在iOS将如何通过通用链接区分哪个应用程序打开..?

3 个答案:

答案 0 :(得分:12)

为了在两个不同的应用上支持Universal Links单个域,您需要在现有的apple-app-site-association文件中进行更改,网址为:https:// {domain} / apple-app-site-association

单个应用程序支持

对于单一应用程序支持,它看起来像这样

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

对于多应用程序支持

对于多应用程序支持,您需要在details的{​​{1}} applinks数组中再添加一个键值对。它看起来像这样

apple-app-site-association

{ "applinks": { "apps": [], "details": [ { "appID": "1234ABCDE.com.domain.myApp", "paths": ["*"] }, { "appID": "1234ABCDE.com.domain.mySecondApp", "paths": ["*"] }, { "appID": "1234ABCDE.com.domain.myThirdApp", "paths": ["*"] } ] } } 文件的一般格式

该文件如下所示:

apple-app-site-association

参考

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

答案 1 :(得分:2)

我找到了解决方案,但它非常简单。 我的问题是我的第一个应用程序通过声明支持所有页面

" *"在apple-app-site-association文件的路径部分。现在,我所要做的就是在我希望我的第二个应用程序处理的路径之前添加NOT。

喜欢" NOT / cabs"。如果这种方法有效,我还没有测试过它。我会在完成后立即发布更新。

答案 2 :(得分:1)

Apple App Site Association文件示例

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

重要:数组中字典的顺序决定了寻找匹配项时系统遵循的顺序。第一场比赛获胜,您可以指定一个应用程序处理网站内指定的路径,而指定另一个应用程序处理其余的路径。

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