【问题标题】:Can I debug code in the parent iOS App when it is awoken by a WatchKit App/Extension?当 WatchKit 应用程序/扩展程序唤醒父 iOS 应用程序时,我可以调试代码吗?
【发布时间】:2015-05-14 21:15:22
【问题描述】:

我想在我的 AppDelegate 的 application:handleWatchKitExtensionRequest:reply: 方法中调试代码。

如果我调试 WatchKit 应用程序,那么当它启动 iOS 应用程序以调用此方法时,调试器未附加。有没有办法让调试器在从 WatchKit 启动时附加到 iOS 应用程序,而不是 Xcode 运行/调试命令?

【问题讨论】:

    标签: ios xcode watchkit


    【解决方案1】:

    是的。

    通过 Xcode 运行您的 WatchKit 应用程序,然后在模拟器上手动启动您关联的 iOS 应用程序。

    一旦启动,使用 Xcode 中的 Debug 菜单到Attach to Process…。您会看到您的 iOS 应用程序在那里运行。

    然后,您将在调试导航器 (⌘+6) 中访问两个活动的调试会话。你可以在那里切换它们。

    【讨论】:

    • 谢谢 - 诀窍是先启动 WatchKit 应用程序...如果我先启动并附加 iOS 应用程序,然后在 Xcode 中按“播放”来运行 WatchKit 应用程序会杀死附加的 iOS 应用程序。所以我必须在一开始就在 WatchKit 应用程序中设置一个断点(因为它在启动时调用 iOS 应用程序),首先运行它并让它在断点处暂停,然后启动 iOS,附加进程,然后让 WatchKit 应用程序继续。 :)
    • 我不确定这是否有助于调试 WatchKit,但您也可以设置一个进程等待它启动。在 Xcode 菜单中,产品 > 方案 > 编辑方案...,然后在信息面板中“等待启动可执行文件”。
    【解决方案2】:

    在您运行 WatchKit 应用并将其附加到调试器后,通过点击其图标在模拟器中手动打开您的 iPhone 应用。然后在 Xcode 中转到菜单中的 Debug -> Attach To Process 并选择您的 iPhone 应用程序。现在 Xcode 应该附加到您的 WatchKit 扩展和您的 iPhone 应用程序中,您可以在 iPhone 应用程序或您的扩展程序中设置断点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-07
      • 2017-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多