如果他们开始使用自定义URL方案,您如何调试应用程序?

时间:2009-01-17 22:25:20

标签: cocoa cocoa-touch xcode

我正在为iPhone开发一款应用程序,但我猜Mac上的问题是一样的。 在通过URL方案启动应用程序后调试应用程序状态的方法是什么?

3 个答案:

答案 0 :(得分:20)

有一种方法可以在从外部URL启动应用程序时调试您的应用程序:

  1. application:handleOpenURL:application:didFinishLaunchingWithOptions:
  2. 中设置您想要的断点
  3. 在Xcode中,编辑Active Executable的设置。在“调试”选项卡上,选中“等待下次启动/推送通知”复选框。
  4. 构建和调试。控制台将提示“等待[AppName]启动...警报将在下次启动时附加到[AppName]。”
  5. 通过调用自定义网址或向其发送推送通知来打开您的应用。调试器将在断点处停止。

答案 1 :(得分:4)

我在Xcode 8.2.1上,最快的方法就是转到产品 - >编辑方案并选择“等待可执行文件启动”,如下图所示。调试开始时,它不会启动应用程序,而是等待" THE APP"推出.."。当一个动作(点击推送通知)时,断点将开始。

enter image description here

答案 2 :(得分:2)

实际上,我认为在Mac上与在iPhone上完全不同,因为你可以在Mac上打开应用程序并调用URL方案,而在iPhone上你需要退出应用程序以打开另一个调用URL方案。

您可以尝试向UI添加调试按钮,该按钮允许您从正在运行的应用程序内部调用URL方案(在NSWorkspace上调用-openURL:)。无论您的应用在发送URL方案时是打开还是关闭,理论上都应该这样做。