iOS WatchKit - 启动手表应用程序“SPErrorInvalidBundleNoGizmoBinaryMessage”时出错

Posted

技术标签:

【中文标题】iOS WatchKit - 启动手表应用程序“SPErrorInvalidBundleNoGizmoBinaryMessage”时出错【英文标题】:iOS WatchKit - Error launching watch app "SPErrorInvalidBundleNoGizmoBinaryMessage" 【发布时间】:2015-04-09 19:06:25 【问题描述】:

我正在尝试构建一个 watchKit 应用程序,该应用程序将允许 iPhone 应用程序和 Watch 应用程序之间的双向通信。 我已经设置了应用程序组,并且所有正确的应用程序证书、配置文件和权利都已设置并匹配。但是当我尝试运行 Watch 应用程序时,我不断收到此错误(仅运行 iPhone 应用程序时没有错误)。

错误:

启动“MyWatchApp WatchKit 扩展”时出错 SPErrorInvalidBundleNoGizmoBinaryMessage

我认为这与捆绑标识符有关,但据我所知,一切看起来都是正确的。有什么建议吗?

这是我的包标识符:

App Group Key: group.com.nitwitstudios.myWatchApp

iPhone App Bundle Identifier: com.nitwitstudios.myWatchApp

Watch App Bundle Identifier: com.nitwitstudios.myWatchApp.watchkit
Watch App WKCompanionAppBundleIdentifier: com.nitwitstudios.myWatchApp

Watch Extension App Bundle Identifier: com.nitwitstudios.myWatchApp.watchkit.extension
Watch Extension WKAppBundleIdentifier: com.nitwitstudios.myWatchApp.watchkit

注意 - 将 Watch Extension App Bundle 更改为“com.nitwitstudios.myWatchApp.watchkit”允许我运行该应用程序,但在尝试与电话通信时我从未得到正确的结果 - > 观看。这在 Why won't app groups work inside my WatchKit extension?

中被指定为包标识符问题

我已经尝试了以下方法,但没有成功:

清理/清理构建文件夹 已删除派生数据 重新启动 Xcode

【问题讨论】:

Apple Watchkit simulator issue: SPErrorInvalidBundleNoGizmoBinaryMessage的可能重复 是的,它是重复的 =( 副本中的答案对我不起作用 【参考方案1】:

我用的是iOS8.2的模拟器;切换到 iOS8.3 有效。

【讨论】:

【参考方案2】:

好的,想通了。我非常接近。 WatchKit Extension Bundle Identifier 似乎不能包含 WatchKit App Bundle Identifier。

所以我的问题是

com.nitwitstudios.myWatchApp.watchkit.extension 

太相似了

com.nitwitstudios.myWatchApp.watchkit

将我的扩展标识符更改为以下内容,瞧,我现在可以使用 MMWormhole 库发送双向消息:

com.nitwitstudios.myWatchApp.extension

【讨论】:

觉得这似乎无关紧要,它是“Voilà”而不是“Wa-La”。

以上是关于iOS WatchKit - 启动手表应用程序“SPErrorInvalidBundleNoGizmoBinaryMessage”时出错的主要内容,如果未能解决你的问题,请参考以下文章

iPhone WatchKit 配套应用显示名称

WatchKit 无法从 Pod 导入库

使用 WatchKit 扩展扩展 iOS Phonegap 构建 - 未找到 Cordova/CDV.h

如何根据WatchKit中的手表大小缩放字体大小?

WatchKit 并发症:手表并发症集有一个未分配的项目

WatchKit:从 Long Look 切换?