8

我无法从新项目运行 watchkit 应用程序。如果我运行 Apple 的示例项目,它运行良好。如果我通过为 watchkit 添加一个目标来将 watchkit 添加到我现有的项目中。然后运行它,即使在我的情节提要中,我有一个设置为具有蓝色背景的主界面控制器,但随着时间的推移出现黑屏。这行代码被调用。

- (void)willActivate {
    // This method is called when watch view controller is about to be visible to user
            [self.listTable setNumberOfRows:5 withRowType:@"List"];
    NSLog(@"%@ will activate", self);
}

我的 iPhone 主应用程序(iPhone 应用程序)没有在模拟器上运行。

这基本上是我看到的。

Apple Watch 模拟器黑屏,右上角有时间标签

4

6 回答 6

11

运行时,是否将方案更改为 WatchKit App 目标?还是您只是像往常一样构建和运行 iOS 应用程序?现在你不能同时运行 iOS app target 和 Watch App target。

您必须按此处所示切换方案/目标,然后选择相同的模拟器并显示您已经完成的手表 UI,(在模拟器中 ->“硬件”选项卡 -> 外部显示器 -> Apple Watch):

方案下拉菜单的 XCode 截图

您还必须添加/编辑方案以查看情节提要的概览或通知部分。有关更多详细信息,请参阅示例 Lister 项目中的“Readme”文件。

于 2014-11-20T16:13:05.637 回答
4

我有一个类似的问题。这是您可以尝试的几件事(为我解决了)

  • 确保您的应用程序、watchkitapp 和 watchkitextension 具有相同的捆绑包 ID,例如应用程序的 com.company.app 和 watchkit 应用程序的 com.company.app.watchapp。我有几个具有不同捆绑 ID 的构建配置,因此 xcode 在创建监视目标期间采用了错误的配置。如果应用程序和扩展程序不同,您将收到编译器错误,但 watchapp bundle id 不会产生错误。
  • 首次运行该应用程序,在外部设备菜单中打开手表之前,将点击所有断点和日志,但打开手表模拟器后您将什么也看不到。
  • 有几次,该应用程序在启动时卡住了我——在调试导航器中,状态是“等待附加”。之后每次都必须重置模拟器。

希望能帮助到你。

于 2014-11-24T18:52:47.437 回答
3

这可能不是你的问题,但它是我的。

如果您在手表应用程序中包含表格,则需要在 InterfaceController 中实现方法才能显示任何内容。你不能只放一个表格,然后在第一行放一个标签,然后让它显示出来(就像你使用静态 UITableViewController 一样)。

按照本指南添加表格:https ://developer.apple.com/library/prerelease/ios/documentation/General/Conceptual/WatchKitProgrammingGuide/Tables.html#//apple_ref/doc/uid/TP40014969-CH14-SW1

于 2015-01-14T22:07:55.857 回答
0

天啊。这个真的把我难住了。我正在研究 Beta 1 中的一些东西,并且有一个表格行,它是 WKInterfaceController 的子类。在 Beta 5 中,我看到的只是相同的空白表视图,并且在调用时

[self.interfaceTable rowControllerAtIndex:x]

它返回零。

解决方案:将我的行切换为 NSObject 的子类,它工作正常!

于 2015-02-03T16:48:09.457 回答
0

只需将方案更改为 AppName WatchKit App 并构建。

于 2015-04-14T07:46:48.693 回答
0
  1. 通过转到产品 -> 方案 -> 更改方案(选择 watchkit 应用程序目标方案)。
  2. 然后,转到产品 -> 方案 -> 编辑方案并选择运行
  3. 将可执行文件更改为 watchkit App
  4. 构建并运行代码。
于 2015-04-06T12:40:59.930 回答