繁体   English   中英

如何启用/禁用 Android 上的蓝牙硬件初始化日志记录?

[英]How to enable / disable Bluetooth hardware initialization logging on Android?

简短的问题是:有没有办法在 Android 上启用/禁用蓝牙硬件初始化记录? 如果是这样,怎么做?

我有两个“Samsung Galaxy Tab A 10.5”设备和一个我目前正在开发的 BLE 应用程序。 该应用程序在一台设备上完美运行。 但是,第二台设备在扫描时没有找到任何蓝牙设备。

大约一个月前发现了这个问题。 那些日子里,快速浏览一下 logcat 就会发现大量与HIDL相关的错误消息。 现在,几周后, HIDL消息不再出现在 logcat 中。 但是,扫描仍然不起作用。 奇怪的是,logcat 中甚至没有一条与蓝牙相关的消息,这使得调试这个问题有点困难。

编辑:启用 HCI 监听日志只显示了一条错误消息:

*** command 'lshal debug -E android.hardware.bluetooth@1.0::IBluetoothHci/default' failed: exit code 128

很明显,其中一块药片已损坏。 有趣的是,为什么HIDL错误消息突然停止显示,以及如何恢复它们?

实际的问题是蓝牙,虽然初始化完成没有错误,但无法正常工作。 问题是,应用程序如何检测到它并警告用户?

我考虑通过阅读日志来检测蓝牙故障:如果扫描蓝牙设备没有产生任何结果并且如果记录了一些HIDL错误消息,那么应该警告用户运行应用程序的设备有问题。 现在HIDL错误消息消失了,需要一种不同的方法。 您对如何检测蓝牙是否正常工作有更好的了解吗?

您可以在开发人员选项中启用蓝牙 HCI 监听登录:

设备设置 -> 开发者选项 -> 启用蓝牙 HCI 监听日志。

详细说明- 如何启用 HCI 日志。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM