Logcat 充满 "input svInfo.flags is 8" 而应用 运行

Logcat full of "input svInfo.flags is 8" while app is running

当我 运行 android studio 上的几乎所有应用程序时,我的 logcat 都会收到如下消息:

"?E/GnssHAL_GnssInterface: gnssSvStatusCb: a: 输入 svInfo.flags 是 8 ? E/GnssHAL_GnssInterface: gnssSvStatusCb: b: 输入 svInfo.flags 是 8"

这是什么?我的应用有问题吗?

退出并从模拟器中的多任务中删除应用程序,然后从 android studio 重新运行 为我修复了它。我假设它是一个 Android 工作室错误。

您应该在没有 GPS 传感器的 AVD 管理器中创建虚拟设备。

并取消选中 GPS

错误将消失。

您的应用不太可能有任何问题。问题可能出在Logcat中的"Filter Configuration"中的设置。它有点像设置一样隐藏起来,并且有自动切换到 "No Filters" 选择的习惯。如果你知道原因,请告诉我。

要忽略问题中的调试错误:在 Logcat 面板中,在过滤器输入和正则表达式选项复选框后的下拉列表中选择一个配置过滤器选项。

可能最好的选择是 "Show only selected application"。

关闭定位服务确实解决了问题。 当我尝试从网络获取数据时发生这种情况 API,现在我通过关闭定位来解决。

有一个更简单的解决方案。在您的 AVD 中,只需转到 settings->location 并取消选中 use location

此修复有两种可能的解决方案,

两者都

You can disable Location Services in the Emulator that you are running app

Create a new Virtual device and disable GPS inside Hardware Profile

我需要启用 GPS 并且无法禁用位置服务,所以我在 logcats 搜索过滤器中使用了这个正则表达式和负前瞻:

^(?!.*input svInfo\.flags is 8)

这会选择不包含错误消息结尾的所有内容(“输入 svInfo.flags 是 8”),但会显示其他所有内容。

搜索过滤器应该在日志输出的正上方。您可能需要激活一个显示“正则表达式”的选择框。