苦苦挣扎的XCode设置为扑扑上的iOS深层链接

问题描述

当某人单击以下链接时,我的应用应打开: https://catalogscanner.horizonpedia.com/P7GWqM6ADnG 这可以在我的Android手机上使用,因此我假设我已经在编码站点上正确完成了所有操作。 (我为此使用https://pub.dev/packages/uni_links) 因此,您首先将域添加到了Runner.entitlemens。 目标会员类别显示没有选中赛跑者:

enter image description here

当我勾选该框并开始构建时,它失败并显示以下错误消息:

enter image description here

解决此问题,我必须删除该信息。我的“构建阶段”部分中“复制捆绑包资源”中的plist:

enter image description here

如果我的理解是正确的,那么跑步者权益的目标成员应该是跑步者,不是吗?

我可以尝试其他方法进行故障排除吗?

解决方法

这两个文件都不需要选中其目标成员身份复选框。这些复选框主要适用于源文件,例如典型的Swift文件(.swift)或Objective-C实现文件(.m)。

它们也不应该属于复制捆绑包资源阶段的一部分。您只需要确保在应用目标的“构建设置”窗格中正确设置了Info.plist文件,如下所示:

Packaging section of Build Settings

关于Universal Link支持,您首先必须确保上传的apple-app-site-association文件的格式正确(我刚刚通过您的域进行了检查,由于我的浏览器Firefox告诉我它似乎是无效的JSON,解析时遇到问题;您也可以在线查找AASA验证程序以确认这一点。

该过程如下:iOS将安装您的应用程序时,它将查找您在.entitlements文件中提到的域。然后它将从此指定的域检索AASA文件,并将您的应用注册为这些链接的处理程序。然后,如果您碰巧浏览或单击到/在与AASA文件中指定的路径匹配的链接上,则您的应用程序应启动,并且您的应用程序委托中将具有适当的回调,您可以在其中拦截该链接并采取适当的操作

如果您想了解有关Universal Link支持的更多信息,可以查看Apple developer documentation