【问题标题】:Debugging Apple Watch and iOS app simultaneously同时调试 Apple Watch 和 iOS 应用
【发布时间】:2016-03-09 16:59:26
【问题描述】:

直到今天,我已经能够同时构建、运行和调试我的手表应用和 iOS 应用。当我构建并运行时,调试器会自动附加到手表上。然后我必须手动附加 iOS 调试器。我一直在关注these steps,他们总是工作得很好。我可以在手表和手机上都打断点(这是我需要做的才能调试 sendMessage 或 applicationContext 之类的东西)。

现在的问题是,当我手动将 iOS 应用程序附加到调试器时(通过调试 -> 附加到进程),它根本不会出现在可能的目标或应用程序中,即使应用程序正在手机上运行。

我检查了我的计划并确保目标仍然正确——它们是正确的。

我什至尝试过调试 -> 使用 PID 或名称附加到进程。当我尝试按名称附加 iOS 应用程序时,我收到一条错误消息 Will install Watch App called with bad bundle identifier '(null)

为什么我的 iOS 应用不再可能成为目标?当我的手表应用也被附加时,如何让它再次附加到调试器?

【问题讨论】:

  • 您是否尝试过清理构建文件夹(⌥⇧⌘K)?重新启动您的 Mac?
  • 我之前已经重启了我的电脑并多次清理了构建文件夹,但它并没有改变任何东西。现在再次重新启动并清理构建文件夹后,我收到一个错误error: WatchKit App doesn't contain any WatchKit Extensions. Verify that the value of NSExtensionPointIdentifier in your WatchKit Extension's Info.plist is set to com.apple.watchkit. 我检查了我的 Info.plist 并且它是正确的
  • 问题实际上与调试无关,而是一个构建问题,它也恰好影响您的应用程序无法正确调试。如果您搜索“WatchKit 应用程序不包含任何 WatchKit 扩展”错误,您可能会发现建议的修复程序之一会有所帮助。您还应该file an Xcode bug report,尤其是如果您碰巧使用的是测试版软件,并且由于新工具或操作系统版本而中断。
  • 对我来说同样的问题。你们运气好吗?
  • @PerjanDuro 不,我一直在使用模拟器同时调试两者。当我尝试使用无法连接手机的实际设备时:/

标签: xcode swift debugging apple-watch attach-to-process


【解决方案1】:

我使用另一种方式同时调试手表应用和 iPhone 应用。当手表和 iPhone 模拟器在我的 Mac 上运行时,我运行这个 script。然后在同一个模拟器上启动我的手表应用程序或 iPhone 应用程序。我可以同时观察两个日志。

附:这些日志来自控制台,所以你应该使用 NSLog(),而不是 print()。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多