通用链接不起作用

时间:2016-10-13 10:33:19

标签: ios ios-universal-links

这是我的apple-app-site-association文件:

{
    "applinks": {
        "apps": [],
        "details": [
            {
                "paths": [
                    "*",
                    "\/doubanapp\/*",
                    "\/authorHome"
                ],
                "appID": "KV99XUUJ3U.com.moer.MoerFinance"
            }
        ]
    }
}

我已经设置了Xcode Associated Domains,这是我的截图:

image description here

我使用https://search.developer.apple.com/appsearch-validation-tool/测试我的域名,但收到错误:

  

错误没有具有域权利的应用程序以前使用的权利数据   验证深层链接双重身份验证是否来自当前发布的   你的应用程序的版本。此数据可能需要48小时才能更新。

如果我的应用必须被释放,那么等待48小时?

2 个答案:

答案 0 :(得分:2)

不要求您的应用程序在App Store中存在,以使Universal Links正常工作。

但是,查看https://moer.jiemian.com/apple-app-site-associationhttps://moer.cn/apple-app-site-association,两者都在提供无效的SSL证书。 iOS会拒绝这些,这会破坏Universal Links。

我会为Branch.io添加一个无耻的插件(完全披露:我在分支团队中),以防你只是在寻找简单的深层链接而不想处理这些设置细节。

答案 1 :(得分:0)

对于自签名证书问题,您是否尝试将 ?mode=developer 添加到关联域的权利(例如 applinks:mydomain.com?mode=developer)的 URL 中?

这是当您使用不受信任的证书时域的格式:

<service>:<fully qualified domain>?mode=<alternate mode>

<alternate mode> 设置为 developer,如我上面的示例

文档说:

<块引用>

开发人员

指定只有处于开发者模式的设备才能访问域。在此模式下,您可以在 Web 服务器上使用任何有效的 SSL 证书,包括系统不信任的证书。确保您不会让您的用户面临安全问题,例如中间人攻击。作为额外的预防措施,只有使用开发配置文件签名的应用才能使用开发者模式,并且用户必须在他们使用的任何设备上选择加入。

这是 Apple 的参考文档 - 滚动到页面底部:

https://developer.apple.com/documentation/bundleresources/entitlements/com_apple_developer_associated-domains