通过深度链接进入 iOS 模拟器?

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

在 Android 上,您可以使用 ADB 通过控制台将链接导入模拟器。

是否有类似的方法或解决方案来打开与最新的 iOS 模拟器的深度链接?

53145 次浏览

You can type this into your Terminal :

xcrun simctl openurl booted '<INSERT_URL_HERE>'

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

作为一个替代方案,你可以使用 控制室开源工具。

ControlRoom Open URL

(Tested for Branch QuickLinks)

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

  1. 将深度链接复制到剪贴板。
  2. 在 iOS 模拟器中打开 Safari 应用程序,并在 Safari 中粘贴 deeplink URL。
  3. Safari 会尝试打开网址,但是会失败,显示一个错误警报。
  4. 打开你的应用程序,通过在 Xcode 运行它,模拟器会认为应用程序是从 deeplink 打开的,你会在代码中收到所需的 deeplink 信息。

还有一种方法:

在模拟器里

  1. 打开 联系人应用程序
  2. 进入一个预定义的联系人,比如“ John Appleeseed”
  3. Edit
  4. 点击 加上网址(在底部)-并将您的链接设置为此联系人的“主页”URL
  5. 点击 成交保存联系人
  6. 点击你刚刚添加的链接

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

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

尽管有很多很棒的解决方案,我还是想加上我的5美分:)

My approach is based on 自动售货机 macOS app and lets you execute 任何 deeplink from your computer on iOS simulator with two clicks.

我将使用 快速行动,因为在这种情况下,我们可以使用任何应用程序来获取 URL。启动应用程序 File —> New —> Quick Action —> Choose。现在拖放第一个动作。是 Set Value of Variable。转到 View菜单并选择 Variables。在“内部变量”部分右键单击并选择 New variable。取个类似 url的名字。我们将把输入文本(应该是我们的 deeplink)保存在该变量中。现在,拖放 Run Shell Script操作,确保 Pass输入参数设置为“作为参数”。粘贴以下行:

xcrun simctl openurl booted $1

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

它应该是这样的:

现在将此操作保存为 Open in Simulator。此操作现在在 Services上下文菜单中可用。在任意应用程序中选择任意 URL 作为文本,右键单击,Open in Simulator-整齐的右键?

CMD 指挥部失灵了? !

Unfortunately, the xcrun simctl openurl booted command didn't work. My link is something like this:

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

我总是看到这样的错误:

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

解决方案

我可以通过:

enter image description here

  • 添加你的 deeplink 并点击“ LOAD”按钮。因此它应该导航到:

enter image description here

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

就是这样!

请注意

如果你直接把这个链接添加到 Safari 中,它不会工作的很好,确保你使用的是 halgateewood.com 深度链接测试器。