Apple Watch 应用程序在 iOS 8.2 上被删除后不会重新安装,只是挂在启动屏幕上

Apple Watch app won't re-install after being deleted on iOS 8.2, just hangs on launch screen

我可以在我的手表上安装我的 Apple Watch 应用程序(正在生产中),它第一次加载就很好。如果我卸载它并重新安装它,它安装得很好,但是当我点击它的图标时它就会挂起。它有加载指示器和应用程序名称,但永远不会加载。

这是设备日志中的错误:

Jul 6 15:20:23 xxxxx-iPhone companionappd[417] <Notice>: (Error) WatchKit: <SPApplicationManager.m __56-[SPApplicationManager beginUsingPlugin:withCompletion:]_block_invoke264:392> * * * After 10.0 secs, beginUsing: hasn't called us back for plugin with beginUsingInstanceUUID <__NSConcreteUUID 0x127e18800> 53259124-xxxx-454F-xxxx-FD013Dxxxxxx

Jul 6 15:20:23 xxxxx-iPhone companionappd[417] <Notice>: (Warn ) WatchKit: <SPApplicationManager.m __83-[SPApplicationManager getOrBeginActivePlugInForApplication:setupBlock:completion:]_block_invoke_2319:478> Unable to start plugin com.xxxxx.watchkitextension 0x127e887c0 with identifier com.xxxxx.watchkitapp (Error Domain=com.apple.watchkit.errors Code=17 "PKPlugin beginUsing: never called back" UserInfo=0x127d62b90 {NSLocalizedDescription=PKPlugin beginUsing: never called back})

Jul 6 15:20:23 xxxxx-iPhone companionappd[417] <Notice>: (Error) WatchKit: <SPCompanionAppServer.m __51-[SPCompanionAppServer sendToRemoteInterface:call:]_block_invoke492:860> activePlugInForIdentifier: returned nil for application com.xxxxx.watchkitapp

我不明白这是怎么回事。这是我无法解决的 SDK/OS 问题吗?有人看过吗?

更新:我刚刚在论坛上阅读(并确认)如果您重新启动手表和 phone,手表应用程序将加载而不会出现问题。对我来说听起来像是 OS 错误。

更新 2:收到我提交的雷达的响应:

我想确认他们知道并修复它是件好事。

这听起来确实像是一个 OS 错误,因为您的日志甚至说 Unable to start plugin com.xxxxx.watchkitextension。那是你无能为力的。我要说的是,您可能应该重新启动您的模拟器,以便它再次正常工作。另一种选择是只重置您的模拟器和硬件,但这只是最坏的情况。正如楼上所说,你应该归档一个雷达here。最后,您可以尝试在真实设备上安装它,然后将其删除,以检查它是否是模拟器错误,或者它也会在普通设备上发生。很可能只是模拟器无法启动应用程序。希望有所帮助, 朱利安

我自己也遇到过这个问题,您不必担心。这是 watchOS 中的一个常见错误,每个人都会不时遇到,即使是使用第三方应用程序的普通用户也是如此。

由于 watchOS 还没有真正结束测试版(在我看来),您应该等待下一个版本,喝杯咖啡,希望它能尽快修复。

我可以肯定地保证,您并不是唯一遇到此错误的人,并且在 Apple 修复它之前您无能为力。如果您等不及了,可以创建错误报告 here

我最近 运行 进入了这个问题 运行ning Xcode 7.0 beta 3 iOS 9.0 beta watchOS 2.0 beta。模拟器错误日志显示如下。

Jul 15 09:48:39 mymachine DTServiceHub[69227]: DTMemlimitAssertionFactory: failed to remove active and inactive memory limits for pid 1 (result = -1)

Jul 15 09:48:42 mymachine companionappd[69155]: (Error) WatchKit: SPCompanionAppServer.m -[SPCompanionAppServer _launchSockPuppetAppForCompanionAppWithIdentifier:options:completion:]:1176 Installation of com.mydomain.myapp.watchkitapp failed

我认为这是由于在将新目标添加到我现有的 iOS 9 beta swift 应用程序时将我的 WatchKit 应用程序命名为 "Watchkit App" 而不是 "myapp WatchKit App" 造成的。

为了解决这个问题,我备份了我的 InterfaceController.swift 和 Interface.storyboard 文件(我更改了 WatchKit 应用程序中的唯一文件)。删除了项目中的 WatchKit App 和 WatchKit App Extension 组。并且,删除了 WatchKit App 和 WatchKit App Extensions 目标。

我用 "myapp WatckKit App" 的正确名称重新添加了 WatchKit 目标。用我的备份文件覆盖新文件。现在应用和watch应用运行很好。

如果您在真正的手表上遇到同样的问题 - 重新启动手表并且 phone 帮助了我,至少在我下次遇到这个问题之前,这个问题再也没有出现过。

OS 使用的版本:

iPhone: 5s

iOS: 8.3

观看OS:1.0.1

感谢以下论坛帖子,

https://forums.developer.apple.com/thread/7845