我正在尝试为我的应用创建通用链接。我使用苹果验证工具来测试我的服务器配置(https://search.developer.apple.com/appsearch-validation-tool/),一切看起来都很好。
所以我运行我的app:
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray * _Nullable))restorationHandler
方法已实施但我的应用从未打开过。我只能看到Safari。权利也被添加到XCode。有趣的是,在智能应用程序横幅上,我从来没有打开过这个词,但我得到了视图按钮,以便我可以从应用程序商店下载它。我做错了什么或者我的应用程序是否必须上传到appstore才能通过它打开链接?
答案 0 :(得分:1)
对我来说,问题是在Appstore
版本中我点击了右上角一次以转发到Safari页面。即使通过卸载和应用程序的新安装,也会保存此行为。
在dev
版本中,我从未点击过右上角,因此通用链接始终有效。
如何修复
例如,转到备注并创建链接https://example.com/whatever
现在长按此链接并选择Open in "<App Name>"
答案 1 :(得分:0)
让我们先来看看:您的应用无需上传到应用商店即可实现。
您的开发是否与同一个Web服务器相同?没有dev / qual.mydomain.com?
验证JSON文件中的团队ID /包标识符组合是否正确
通过消息应用或邮件将链接发送给自己,并且您长按它。你得到“在你的申请中打开”吗?这意味着它基本上正常工作,你只是'遇到Safari的问题(有报道称Universal Links不能在Safari中从同一个域开放)。显然iOS可以处于某种“模式”,不再打开应用程序,直到你明确要求Safari再次执行此操作(请参阅此answer)
您是否在swcd
设备日志中看到任何行,这些行可以提供有关JSON文件下载的任何错误的详细信息
在干净的设备上第一次从Xcode运行应用程序后,您还应该看到下载apple-app-site-association
文件的Web服务器上的命中
更新:
"*"
以及"/"
。答案 2 :(得分:0)
我的问题是,当我进行开发时,仅在为Ad-Hoc进行编译时,不包括Entitlements.plist。 (我正在使用Xamarin)