91

我想找到一种更简单的方法来调用 iOS 模拟器中的深层链接。

在 Android 上,您可以通过控制台使用 ADB 将链接通过管道传输到模拟器中。

是否有类似的方法或解决方法可以使用最新的 iOS 模拟器打开深层链接?

4

6 回答 6

217

您可以在终端中输入:

xcrun simctl openurl booted <INSERT_URL_HERE>

您甚至可以使用内置的共享扩展从 Finder 共享文档到 iOS 模拟器。

于 2017-10-10T15:23:50.180 回答
28

这是另一种方法:

在模拟器中

  1. 打开通讯录应用
  2. 转到预定义的联系人之一,例如“John Appleseed”
  3. 点击编辑
  4. 点击添加网址(在底部) - 并将您的链接设置为此联系人的“主页”网址
  5. 点击完成以保存联系人
  6. 点击您刚刚添加的链接

专业提示:您可以向 URL 条目添加自定义标签,例如,如果您想测试不同的 URL 并能够快速识别它们。

注意:如果您重置模拟器,联系人应用程序将重置为默认值并丢失 URL。

于 2020-09-28T12:08:48.383 回答
11

作为替代方案,您可以使用ControlRoom开源工具。基本上它是模拟器 cli 之上的包装器。

控制室打开 URL

于 2020-03-11T09:33:10.307 回答
3

即使有很多很棒的解决方案,我仍然想加我的 5 美分 :)

我的方法基于Automator macOS 应用程序,让您只需单击两下即可在 iOS 模拟器上从您的计算机执行任何深度链接。

我将使用快速操作,因为在这种情况下,我们可以使用任何应用程序从中获取 URL。所以,启动应用程序,File —&gt; New —&gt; Quick Action —&gt; Choose. 现在拖放您的第一个操作。会的Set Value of Variable。进入View菜单并选择Variables。在变量部分中,右键单击并选择New variable。将其命名为url. 我们将在该变量中保留输入文本(这应该是我们的深层链接)。现在拖放Run Shell Script操作,确保Pass输入参数设置为“作为参数”。粘贴以下行:

xcrun simctl openurl booted $1

其中 $1 将是我们的 URL 变量。

它应该是这样的:

现在将此操作另存为Open in Simulator. 此操作现在在Services上下文菜单中可用。在任何应用程序中选择任何 URL 作为文本,右键单击,Open in Simulator- 整洁对吗?

于 2021-01-06T01:39:45.867 回答
3

cmd 命令不起作用?!

不幸的是,该xcrun simctl openurl booted命令不起作用。我的链接是这样的:

myapp://?p=abc&case=12345

我一直看到以下错误:

MyApp % zsh:未找到匹配项:myapp://?p

解决方案

我能够通过以下方式修复它:

在此处输入图像描述

  • 添加您的深层链接并点击“加载”按钮。因此它应该导航到:

在此处输入图像描述

  • 点击深层链接(上面屏幕截图中的黑框)。

就是这样!

注意

如果您将链接直接添加到 Safari,它将无法正常工作,请确保您使用的是 halgatewood.com 深层链接测试器。
于 2021-10-04T08:50:25.947 回答
2

(针对Branch.io快速链接测试)

在 iOS 模拟器中打开深度链接的另一种非常简单的方法是:

  1. 将深层链接复制到剪贴板。
  2. 在您的 iOS 模拟器中打开 Safari 应用程序并将您的深层链接 url 粘贴到 safari 中。
  3. Safari 会尝试打开 url,但会失败,并显示错误警报。但别担心。
  4. 打开您的应用程序,通过从 Xcode 运行它,模拟器会认为该应用程序是从深度链接打开的,您将在代码中收到所需的深度链接信息。
于 2020-08-30T11:39:05.550 回答