通用链接在开发中工作得很好,但是一旦我对应用程序进行签名并将其部署到 TestFlight 和 App Store,似乎未获取 apple-app-site-association,因此该应用程序未注册以打开通用链接。
1./.well-known/apple-app-site-association file:
{
"applinks": {
"apps": [],
"details": [{
"appID": "myteamid.com.mycompany.appName",
"paths": ["*"]
}]
}
}
服务器部分看起来不错,因为每当我通过手机上的电缆运行应用程序时,它都会成功获取。
App Search API 验证工具返回以下内容作为应用程序链接:
需要采取的行动
- 无法提取通用链接所需的信息。学习如何
实施推荐的通用链接。
- 错误没有具有域权限的应用程序
- 用于验证深度链接双重身份验证的权利数据来自应用程序的当前发布版本。此数据可能需要 48 小时才能更新。
2)能力:
关联域 - ON,域列表为:
应用链接:link.mycompany.com
我打开的其他功能是:推送通知和后台模式。
3) 配置文件:添加通用链接和推送通知后,我创建了一个新的,它包括:
能力:
-
相关域,
-
项目清单
-
游戏中心,
-
在应用程序内购买,
-
钥匙串共享,
-
推送通知。
权利:
4)安装应用程序时,它在试飞中的表现与通过电缆加载时的表现不同:
-
通过电缆我可以看到对 apple-app-site-association 文件的成功 http 请求,并最终形成进程 swcd:“添加了服务‘applinks’、appID‘myteamid.com.mycompany.appName’、域‘link.mycompany.com’”
-
试飞- 安装时没有 http 请求的迹象,如果我之前通过电缆安装了该应用程序,则会显示以下行:“已删除服务 'applinks'、应用 ID 'myteamid.com.mycompany.appName'、域 'link.mycompany.com'(已删除域)”
这当然会导致每当我通过 TestFlight 或 Description 安装应用程序时,通用链接都不起作用。
有什么想法哪里出错了吗?
在苹果开发者技术支持的帮助下,我终于弄清了这个问题的真相。在我的(cordova)项目文件夹中有两个文件:
权利-Debug.plist
权利发布.plist
当我将值 applinks:mywebpage.com 添加到功能 -> 关联域 -> 域时,Entitlements-Debug.plist 得到以下行:
<key>com.apple.developer.associated-domains</key>
<array>
<string>applinks:mywebpage.com</string>=
</array>
但 Entitlements-Release.plist 没有改变。我为解决该问题所做的是将生成的行复制粘贴到 Entitlements-Debug.plist 中。之后,我执行了与之前完全相同的存档和上传过程,一切正常。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)