runtime:从后台线程调用的UI API: - [UIApplication applicationState]必须仅在主线程中使用

时间:2017-09-27 02:33:20

标签: objective-c xcode9

Mac系统:10.12.6 SDK:Xcode 9.0 部署目标:iOS 9.0

我是一位非常新的开发人员,但我的代码中没有警告。

将我的Xcode升级到9后,我的代码显示之前不存在一些警告。最容易混淆的是下面的运行时警告显示,我知道它来自主线程检查,我可以通过设置使其成为空白。但我想知道如何修复它,我已经在主线程中创建了所有更改UI代码,就像:

  dispatch_async(dispatch_get_main_queue(), ^{
        [[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
    });

以下是有关警告和Xcode日志的屏幕截图。

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:0)

更新您的pod应该可以解决问题。在更新我的谷歌地图窗格之前,我收到了相同的警告。

更新Google地图窗格