如何解决/解决Xcode 10.1 / iOS 12.1中出现的“信号强度查询返回的错误”日志?

时间:2018-11-28 18:50:57

标签: ios xcode core-telephony

最近更新到iOS 12.1(从12.0开始),Xcode 10.1(从10.0开始),并且在如下所示的物理设备上调试时,在Xcode控制台中看到大量错误消息:

[NetworkInfo] Signal strength query returned error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied", descriptor: <CTServiceDescriptor 0x28051d700, domain=1, instance=1>

每隔几秒钟我就会收到几个这样的日志,唯一改变的是CTServiceDescriptor的十六进制值。没有代码更改,因此我必须假定其与iOS或Xcode更新有关。

据我所知,这似乎对性能没有任何影响,该应用程序正在按预期运行,并且我的手机正在运行(甚至更新了信号强度!)。我在Stack Overflow,Google或Apple Developer论坛上找不到任何有用的/相关的信息,尽管我发表了与后者类似的帖子,帖子获得批准后将在此处链接。

任何对我如何进一步解决或解决问题的建议/见解,将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:4)

在较新的iOS版本中调用[CTTelephonyNetworkInfo new];似乎是一种副作用,我认为可以放心地忽略它。我不确定应用程序开发人员是否可以采取任何措施来解决此问题,这似乎是副作用,signalStrength中的CTTelephonyNetworkInfo在最新版本的iOS(9+)中对于公共应用程序是隐藏的。这并不是什么新鲜事,但是在iOS 12.1(也许是其他版本?)下,这里的权限错误会带来更大的干扰。

CTTelephonyNetworkInfo似乎是一个经过匆忙修订的API,至少可以公共使用:例如,返回v12.1中已修复的运营商信息时,它在v12中存在错误。 why do serviceSubscriberCellularProviders return nil? (in iOS 12)

我还想起了macOS控制台日志中经常出现的无关的权限错误-https://eclecticlight.co/2016/09/23/sierras-console-promising-but-incomplete/-或Xcode 8错误,在早期Beta中,模拟器非常嘈杂。有时内部的ter不休会转移到外部版本,而Apple以外的人对此无能为力...