WatchKit App 只启动 iPhone Simulator 和 WatchKit App,不启动 IOS App
Posted
技术标签:
【中文标题】WatchKit App 只启动 iPhone Simulator 和 WatchKit App,不启动 IOS App【英文标题】:WatchKit App only starts iPhone Simulator and WatchKit App, but not the IOS App 【发布时间】:2015-05-17 21:54:16 【问题描述】:我已经将WatchKit App配置为在iPhone 6上运行,WatchKit App Scheme Executable指向WatchKit App.app,Watch接口指向Main,但是ios App并没有只启动WatchKit App。
当我选择在 iPhone 6 上运行 WatchKit 应用程序时,iPhone 6 模拟器正在启动,我看到黑屏一秒钟,然后模拟器返回 IOS 级别但主应用程序没有启动,只有 WatchKit 应用程序在 Apple Watch 模拟器上。我不知道为什么IOS App没有启动?
【问题讨论】:
【参考方案1】:为了在运行 Watch Extension 的同时调试 iOS 应用,您应该按照here 解释的步骤进行操作。
您还需要了解,iOS 应用程序不必在 Watch 应用程序运行时运行。您有多种可能的运行时场景组合...您的 iOS 应用和 Watch 应用必须无缝处理所有这些组合。
iOS 应用正在运行,但 Watch 应用没有运行 Watch App 正在运行,但 iOS App 未运行 两个应用都在前台运行 Watch App 在前台运行,iOS App 在后台运行我还发布了一些关于从 Watch Extension 启动父应用以及共享数据here 的附加信息。
希望对您有所帮助。
【讨论】:
你让我开心! 还有没有可能看到IOS App的NSLog语句?【参考方案2】:如果你想从容器应用中查看 NSLogs,你可以这样做:
尽早在手表应用的进程中设置断点 运行容器应用 停止容器应用 运行手表应用并让它命中断点 在手表应用程序运行和调试连接的情况下,转到模拟器并通过单击打开容器应用程序 返回 XCode 并转到 Debug > Attach to process > Your container app您现在应该连接到这两个进程,并查看来自这两个进程的断点和日志。您可以使用左侧窗格中的线程导航器在应用之间切换(您需要这样做才能让手表应用再次运行)。
请注意,手表应用程序中的早期断点是可选的,我只是发现确保捕获任何早期断点很有用。
【讨论】:
【参考方案3】:目前有一个尚未修复的错误。要绕过并启动 iPhone 应用程序,请执行以下操作:
1) 停止 Xcode 中的任何进程。
2) 构建并运行 iPhone 应用程序。
3) 启动 iPhone 应用程序后停止。
4) 切换到 WatchKit 方案扩展并构建并运行它。
5) 从 iPhone 主屏幕点击图标打开您的 iOS 应用。
【讨论】:
我已经找到了解决方法,但是通过这种解决方法,无法为 IOS 应用程序设置断点。与WatchKit App交互无法调试? 不是这个时候,最新版本的发行说明说这是一个错误。 设置断点应该可以正常工作。我已经做了一堆。也许我误解了你的问题?当我在附加调试器后设置断点时,它会正确触发。 除了断点之外,使用 NSLog 来调试 IOS 应用程序会很棒。但正如“中午”所说,暂时无法使用它。 @Pahnev 不,它没有。以上是关于WatchKit App 只启动 iPhone Simulator 和 WatchKit App,不启动 IOS App的主要内容,如果未能解决你的问题,请参考以下文章
在共享的 Swift App 框架中使用 Core Data
Apple Watch:一个 Watchkit App 可以与多个 iOS App 通信吗?
Xcode 无法安装 WatchKit App:“App 安装失败,无法连接到设备。”