在Simulator上运行,在设备上失败:错误:WatchKit App不包含任何WatchKit Extensions

时间:2016-11-03 06:30:20

标签: objective-c xcode watchkit

我在尝试在真实设备上运行项目时看到以下错误,在模拟器中运行正常。

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

可能相关或不相关的事情

  • 我在手表和主应用目标
  • 中使用可可豆荚
  • 该项目主要是objective-c但有一些快速文件
  • Xcode 8.1(8B62)
  • 设备软件版本:iOS 10.1.1& WatchOS 3.1
  • 部署信息>部署目标:iOS 10.0 watchOS 3.0

我尝试过的事情

  • 我已经多次检查过所有正确的文件都属于监视目标。我可能在这里遗漏了一些东西,但我认为如果是这样的话,它将无法在模拟器上运行
  • 捆绑标识符
    • 主要应用的标识符:< app id >
    • 观看应用包的标识符:< app id >.watchkit
    • 观看应用WKCompanionAppBundleIdentifier< app id >
    • 观看扩展程序的包标识符:< app id >.watchkit.extension
    • 观看附加信息NSExtension&gt; NSExtensionAttributes&gt; WKAppBundleIdentifier< app id >.watchkit
  • NSExtension&gt; NSExtensionPointIdentifiercom.apple.watchkit
  • WKWatchKitApp在Watch Extension和Watch App
  • 中设置为YES
  • 我已从Build Phases&gt; Embed App Extensions
  • 删除并重新添加.appex
  • 确保Mach-O Type在所有目标中设为executable
  • 按照in this answer
  • 所述重新安装广告连播
  • 清算衍生数据
  • 清除构建文件夹
  • 重新启动Xcode
  • 我尝试了存档,但失败并出现同样的错误

代替答案,关于调试/排除故障的建议也将受到赞赏。

2 个答案:

答案 0 :(得分:2)

我间歇性地看到了这种情况,但通常会重建第二次修复它。我从来没有找到原因。

我一直认为它是Xcode中的一个错误。

抱歉,不能提供更多帮助,但您并不孤单。

答案 1 :(得分:0)

我遇到了这个错误,还有其他3个错误。

原来问题是<ol> <li value=3>it doesn't <li>have to <li>make <li value=42>sense </ol>设置不正确。在“构建设置”下,确保Valid Architectures包含Valid Architecturesi386

一旦修复,手表扩展程序将被构建,所有错误都将消失。