2020-01-18 18:03:02.316685-0500 Watch Extension[529:813076] Execution of the command buffer was aborted due to an error during execution. Insufficient Permission (to submit GPU work from background) (IOAF code 6)
在测试3个HealthKit应用程序时,我开始反复打印这个控制台消息,但我不知道它与什么相关,所以之前的问题只与iPhone有关。具体地说,当我模拟锻炼动作(即慢跑)时,似乎可以触发它。知道是什么导致了手表上的这条消息吗?
编辑:我认为问题出在我用来在手表应用上显示动画的SKScene。当我注释掉下面的内容时,我再也看不到控制台警告了:
@IBOutlet var spriteKitScene1: WKInterfaceSKScene!
@IBOutlet var spriteKitScene2: WKInterfaceSKScene!发布于 2020-01-30 08:35:20
HealthKit一定是在使用Metal,或者是你的应用程序中的某个东西在使用它。金属不允许后台处理。
要消除该警告,您需要暂停或挂起任何使用Metal的进程。
在AppDelegate.swift文件中,您可以实现以下两个方法:
func applicationWillResignActive(_ application: UIApplication) {
//Pause or suspend any operations using Metal
}
func applicationDidBecomeActive(_ application: UIApplication) {
//Resume or start operations using Metal
}进入后台/前台时启动/停止操作的另一种方式是使用通知。如果你喜欢这种模式,我会发布一些例子。
请注意,您看到的是一条警告,指示未在后台进行金属加工。如果您的应用程序工作正常,您可以忽略该警告。
https://stackoverflow.com/questions/59805668
复制相似问题