【问题标题】:How to troubleshoot/resolve "Signal strength query returned error" logs that are appearing in Xcode 10.1/iOS 12.1?如何排除/解决 Xcode 10.1/iOS 12.1 中出现的“信号强度查询返回错误”日志?
【发布时间】:2019-04-30 18:13:17
【问题描述】:

最近更新到 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 论坛上找不到任何有用/相关的内容,尽管我与后者发表了类似的帖子,一旦帖子获得批准,我将在此处链接。

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

【问题讨论】:

  • 这里有同样的问题。我难住了。具体来说,我正在使用 AWS SDK 中的 AWSMobileClient。在模拟器中,我得到了各种 coreTelephony 错误。
  • 那个解决方案帮助了我,有点忽略或禁用错误日志stackoverflow.com/questions/37800790/…

标签: ios xcode core-telephony


【解决方案1】:

这似乎是在较新版本的 iOS 下调用 [CTTelephonyNetworkInfo new]; 的副作用,我认为可以安全地忽略它。我不确定应用程序开发人员可以做些什么来解决这个问题,在最近的 iOS 版本(9+)中,CTTelephonyNetworkInfo 内部的signalStrength 对公共应用程序隐藏似乎是一种副作用。这不是什么新鲜事,但在 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 错误,在早期测试版中,模拟器非常嘈杂。有时内部讨论会溜到外部发布,Apple 之外的任何人都无能为力...

【讨论】:

  • 是的,我有一种感觉,这将是一些类似的东西......希望他们能更好地防止这些类型的东西从裂缝中溜走,因为它会在控制台中跟踪任何有用的日志一个真正的痛苦。感谢您的回复!
  • 按照这里的建议,我似乎很幸运地阻止了这些日志的出现:stackoverflow.com/questions/37800790/…
  • 嗯,我收到了这些错误,不要调用任何 CTTelphonyNetworkInfo 调用。
  • 我认为是 Firebase 故障,我的网络没有问题,而且我没有使用移动数据。这会导致每隔几次启动延迟 15-20 秒以加载应用程序中的一些初始数据,但其他一些调用有效。这个错误与我在firestore中使用规则不谋而合,但由于一段时间后我不认为是他们的错。
  • 运行 Xcode 10.1 和 iOS 12.4.1 并在每次应用部署到手机时出现其中两个错误。试图缩小调用它的插件的范围。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-13
  • 2015-11-19
  • 2020-11-23
  • 2011-11-15
相关资源
最近更新 更多