通用链接在iOS模拟器中不起作用

问题描述

我也试图在模拟器中使用通用链接,以便可以对其进行测试。由于这是一个工作项目,因此我没有可使用的兼容设备。因此,尝试在模拟器上进行这项工作。

我已经尽我所能在网上找到可以尝试的所有内容:

  1. 已将关联的域添加到应用中,并将域设置为applinks:192.168.50.200?mode=developer。我正在使用Synology NAS上的Web服务器进行测试。
  2. application(_:continue:restorationHandler:)方法添加到应用程序委托中,记录输入的URL并返回true
  3. 在NAS的Web服务器中创建了.well-known/apple-app-site-association文件。
  4. 尝试使用simctl,iMessage和Safari打开匹配的URL,然后应在应用程序中打开。

但是步骤4不起作用。相反,模拟器只是将URL作为网页打开。

我已经安装了proxyman,它显示了将网页URL发送到服务器并返回了响应,但是从任何时候都不是模拟器发送的apple-app-site-association文件请求。无论我如何尝试和调用事物。

我读过许多博客说,您应该能够使用我尝试过的许多技术在模拟器中测试通用链接。但是他们对我不起作用。我已经在iOS 11.4和13模拟器上进行了尝试。

有什么想法吗?我很新鲜。

解决方法

此后,我在控制台中找到了数据。我看到了

任务。完成,错误为[-999]错误域= NSURLErrorDomain代码= -999“已取消” UserInfo = {NSErrorFailingURLStringKey = https://192.168.50.200/ .well-known / apple-app-site-association,NSErrorFailingURLKey = https://192.168.50.200/.well-known/apple-app-site-association,_NSURLErrorRelatedURLSessionTaskErrorKey =( “ LocalDataTask 。” ),_NSURLErrorFailingURLSessionTaskErrorKey = LocalDataTask 。,NSLocalizedDescription = cancelled}

所以看起来它正在调用服务器,但是没有任何迹象表明请求被取消的原因。

,

弄清楚了。这是因为我的NAS服务器的Web服务器没有可满足Apple TLS要求的有效证书。出于测试目的,我最终使用ngrok提供了有效的证书并重定向到我的NAS中。这有点痛苦,因为每次您启动grok隧道时,它都会生成一个随机但唯一的域,但是出于测试目的,它可以完美运行。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...