你好,我遇到了错误,当试图运行你更新的源代码为iOS平台。
没有修改源代码中的任何内容。
一切都很好,除了当我打开传感器融合页面。它冻结后,我打开该页面,并显示以下错误。
下面是在Xcode中打印到命令行中的内容。
=================================================================
Main Thread Checker: UI API called on a background Thread: -[UIView setNeedsDisplay]
PID: 6667, TID: 2264582,线程名:(none),队列名:com.apple.root.default-qos, QoS: 21
回溯:
4 dialog_IoT_ios 0x000000010403594c -[GLModelView setModel:] + 140
5 dialog_IoT_ios 0x0000000104028170 __35-[茶壶视图控制器viewDidLoad]_block_invoke + 388
6 libdispatch。Dylib 0x00000001056d12cc _dispatch_call_block_and_release + 24
7 libdispatch。Dylib 0x00000001056d128c _dispatch_client_callout + 16
8 libdispatch。Dylib 0x00000001056dd3dc _dispatch_queue_override_invoke + 984
9 libdispatch。Dylib 0x00000001056e29d0 _dispatch_root_queue_drain + 624
10 libdispatch。Dylib 0x00000001056e26f4 _dispatch_worker_thread3 + 136
11 libsystem_pthread。Dylib 0x0000000185c0f06c _pthread_wqthread + 1268
12 libsystem_pthread。Dylib 0x0000000185c0eb6c start_wqthread + 4
2018-03-13 18:11:56.476348+0800 dialog_IoT_ios[6667:2264582] [reports] Main Thread Checker: UI API called on a background Thread: -[UIView setNeedsDisplay]
PID: 6667, TID: 2264582,线程名:(none),队列名:com.apple.root.default-qos, QoS: 21
回溯:
4 dialog_IoT_ios 0x000000010403594c -[GLModelView setModel:] + 140
5 dialog_IoT_ios 0x0000000104028170 __35-[茶壶视图控制器viewDidLoad]_block_invoke + 388
6 libdispatch。Dylib 0x00000001056d12cc _dispatch_call_block_and_release + 24
7 libdispatch。Dylib 0x00000001056d128c _dispatch_client_callout + 16
8 libdispatch。Dylib 0x00000001056dd3dc _dispatch_queue_override_invoke + 984
9 libdispatch。Dylib 0x00000001056e29d0 _dispatch_root_queue_drain + 624
10 libdispatch。Dylib 0x00000001056e26f4 _dispatch_worker_thread3 + 136
11 libsystem_pthread。Dylib 0x0000000185c0f06c _pthread_wqthread + 1268
12 libsystem_pthread。Dylib 0x0000000185c0eb6c start_wqthread + 4
2018-03-13 18:11:56.561553+0800 dialog_IoT_ios[6667:2264582] -[AGXA11FamilyCommandBuffer renderCommandEncoderWithDescriptor:],第114行:错误'A command encoder is already encoding to this command buffer'
-[AGXA11FamilyCommandBuffer renderCommandEncoderWithDescriptor:]:114:失败的断言'一个命令编码器已经编码到这个命令缓冲区'
嗨pureform,
谢谢你的指示,请查看以下问题的修复:
在TeapotViewController。m, viewDidLoad方法(第43行)。
替换:
设置(dispatch_get_global_queue (DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)、^ {
if ([[SensorController sharedSensorController] getDeviceType] == 1) {
self.modelView.model = [GLModel modelWithContentsOfFile:@"Dialog_Watch2.obj"];
其他}{
self.modelView.model = [GLModel modelWithContentsOfFile:@"DIAGR_DW_Final_Dcase.obj"];
}
(自我。modelView显示);
});
:
设置(dispatch_get_global_queue (DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)、^ {
GLModel *模型;
if ([[SensorController sharedSensorController] getDeviceType] == 1) {
model = [GLModel modelWithContentsOfFile:@"Dialog_Watch2.obj"];
其他}{
model = [GLModel modelWithContentsOfFile:@"DIAGR_DW_Final_Dcase.obj"];
}
设置(dispatch_get_main_queue()、^ {
self.modelView.model =模型;
});
});
由于MT_dialog