有什么方法可以将调试器与 Siri Intents *UI* 扩展一起使用吗?

Is there any way to use the debugger with Siri Intents *UI* extension?

我写了一个 Siri Intents 扩展 (#1) 和相应的 IntentsUI 扩展 (#2) .两者都在工作。

要调试 Intents 扩展 (#1),我只需对 Intents 扩展方案执行 cmd-R(方案可执行文件设置为 "Ask On Launch"),它按预期运行并附加到调试器 ()。

Intents扩展(#1)完成后,Intents UI扩展(# 2) 再次按预期运行并显示,但它 NOT 附加到调试器。

我想也许我可以为 IntentsUI 扩展 (#2) 使用与 Intents 扩展 () 相同类型的方案设置#1),但这根本无法启动。

我看不出有什么办法让 IntentsUI 扩展 (#2) 附加到调试器中并允许单步执行代码。

更多的工作,我想通了:

解决方案是将 IntentsUI 方案设置为以下内容:

  1. "Executable" = IntentsUI.appex
  2. "Debug Executable"勾选
  3. "Launch" 设置为 "Wait for executable to be launched"

现在,当您构建 运行 (cmd-R) 时,调试器将等待 Intents UI 扩展附加。在configureView()中设置一个断点。

此时您可以切换到 Intents 方案,然后构建并 运行。当 Siri 意图完成时,意图UI 将执行,附加到调试器,并在您之前设置的断点处停止。

更多的工作,我想通了:

解决方案是将 IntentsUI 方案设置为以下内容:

  1. “可执行”= 午餐时询问
  2. “启动”设置为“等待可执行文件启动” 现在,当您构建 运行 (cmd-R) 时,调试器将等待 Intents UI 扩展附加。在configureView()中设置一个断点。

此时你让嘿siri执行你的intent,然后断点会在func configureView(for: of: interactiveBehavior: context: completion:)

中配置视图时停止