我刚刚升级到Xcode 14.0,当我在iOS 16设备上运行我们的应用时,调用:
第一个月
正在返回警告:
如果在主线程上调用此方法,可能会导致UI无响应。相反,请考虑等待-locationManagerDidChangeAuthorization:
回调并首先检查authorizationStatus
。
如果我必须等待失败/回调,而不是直接调用CLLocationManager.locationServicesEnabled()
方法,我需要对代码进行重大更改。这似乎只发生在iOS 16设备上。如何解决这个问题有什么建议吗?
3条答案
按热度按时间hi3rlvi21#
使用调度队列将其移出主队列,如下所示:
字符串
ipakzgxi2#
我遇到了同样的问题,并使用Async/Await克服了它。
将
CLLocationManager
调用 Package 在一个异步函数中。字符串
然后相应地更新使用此函数的位置。
型
6uxekuva3#
在我的例子中,我必须将main.async和global().async分开,以便在后台检查一些选项。