我看过this post,但它没有解决我们当前的问题。我们希望与一家公司合作开展一项风险投资,问题是我们的苹果网站协会文件可以保持彼此的团队和应用程序ID,但仍然会响应同一个域名吗?即我们的服务器将保留:
{
"applinks": {
"apps": [],
"details": [
{
"appID": "1234ABCDE.com.ourdomain.ourApp",
"paths": ["*"]
},
{
"appID": "D3KQX62K1A.com.theirdomain.theirApp",
"paths": ["*"]
}
]
}
}
这意味着我们的应用可以在我们应用的关联域中拥有applinks:ourdomain.com
。他们的服务器将保持:
{
"applinks": {
"apps": [],
"details": [
{
"appID": "1234ABCDE.com.ourdomain.ourApp",
"paths": ["*"]
},
{
"appID": "D3KQX62K1A.com.theirdomain.theirApp",
"paths": ["*"]
}
]
}
}
然后在他们的关联域中,他们也可以拥有:applinks:ourdomain.com
。因此,如果用户按下ourdomain.com网址并安装了他们的应用程序,它会打开他们的应用程序吗?我正在查看当我们的某个网址被按下并且用户安装了他们的应用时,我们是否可以打开他们的应用。如果用户同时安装了我们的应用程序,会在场景中发生什么?
答案 0 :(得分:0)
这肯定会奏效 - 这正是Universal Links的功能。您正在完成以下两个必要部分:
apple-app-site-association
文件验证域的“控制权”。applinks:
权利请求验证域。只要两件作品都存在谁正式拥有该域名就无所谓。
就两个应用程序同时安装时会发生什么情况,Apple当然是正确的:这是未定义。这意味着Apple特别选择不支持这种情况,所以什么都不会保证。为避免这种情况,您不应将"paths": ["*"]
用于这两个应用;相反,请执行"paths": ["/ourApp/*"]
和"paths": ["/theirApp/*"]
之类的操作,以根据路径区分链接。
由于您提到了Branch.io(完全披露:我在分支机构团队中),我还将介绍这通常对我们的服务有何影响。
我们会为每个应用自动配置和托管apple-app-site-association
文件,因此您无需担心技术细节。当我们有两个有兴趣以这种方式相互合作的应用程序时,过程很简单: