【问题标题】:Can iOS universal app link support multiple apps using the same domain?iOS 通用应用链接可以支持多个应用使用同一个域吗?
【发布时间】:2016-11-24 16:06:28
【问题描述】:

背景:

  1. 为多个客户构建一个普通的应用程序。 具有不同捆绑 ID 的相同代码库,即:

    com.company.client1

    com.company.client2

  2. 希望使用相同的通用应用链接支持所有客户端构建,即:

    company.com/app/path

  3. 尝试将此添加到“apple-app-site-association”文件中

'apple-app-site-association' 文件:

{"applinks": {"apps": [],"details": [
{"paths": ["/app/*"],"appID": "XXXXXXXXXX.com.company.client1"},
{"paths": ["/app/*"],"appID": "XXXXXXXXXX.com.company.client2"}]}

这是苹果的限制吗?

【问题讨论】:

    标签: ios applinks deeplink


    【解决方案1】:

    这是可能的。 Apple 对同一域上的多个应用的​​通用链接没有限制。

    您的apple-app-site-association 似乎格式错误。你需要它看起来像这样:

    {
      "applinks": {
        "apps": [ ],
        "details": [
          {
            "appID": "XXXXXXXXXX.com.company.client1",
            "paths": [
              "/app/*"
            ]
          },
          {
            "appID": "XXXXXXXXXX.com.company.client2",
            "paths": [
              "/app/*"
            ]
          }
        ]
      }
    }
    

    注意appIDpaths 键的顺序,最后关闭}

    如果安装了多个应用程序,您也会遇到此设置的问题,因为它们都在注册相同的路径。您可能需要考虑为每个 ID 添加一个唯一 ID,例如 /app/client1/*

    另一个重要的注意事项是Universal Links don't work in many situations,所以这不是完整的深度链接解决方案(尽管苹果一厢情愿地声称相反)。如果您想要一种更简单的深度链接方法来轻松处理这样的多应用需求,请查看Branch.io(完全披露:我在 Branch 团队)。

    【讨论】:

    • 我目前正在使用 Branch.io。您对使用 Branch.io 处理 OP 场景的最佳方式有什么建议吗?
    • @cmour 这是一个高级配置,目前必须由我们的集成团队启用。可以请send them a ticket 让他们帮助您吗?
    • @AlexBauer 如果任何用户的应用程序的捆绑 ID 为 com.company.client2,操作系统是否会重定向到相应的应用程序?或者它会重定向到 com.company.client1,因为它位于 Array 的第一个位置?我的问题是,捆绑 ID 是否会匹配,而深层链接会调用?还是直接满足第一个?
    • @AlexBauer 我这样做了,当我点击通用链接时仍然只有一个应用程序打开,请帮助我。
    猜你喜欢
    • 1970-01-01
    • 2012-02-01
    • 1970-01-01
    • 2019-05-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多