HarmonyOS 鸿蒙Next 4 无法获取蓝牙 HCI 日志
HarmonyOS 鸿蒙Next 4 无法获取蓝牙 HCI 日志 问题描述:
- 使用应用内操作蓝牙后,无法记录蓝牙 HCI 日志
具体描述:
- 应用通过
BleManager
来扫描、连接及操作蓝牙外设,计划调试下连接过程。在调试模式下打开蓝牙 HCI 日志收集后,通过adb
或hdc
命令都无法获取到日志问题,提示无目录或文件。 - 命令都是遵循鸿蒙论坛提供的,怀疑是没有正常收集到日志文件。
疑惑
- 没有通过系统设置中的蓝牙进行连接,而是通过应用内调用 API 操作蓝牙,是否会应用 HCI 日志的收集?
7 回复
问题解决了,开启 HCI 日志情况下重启设备即可。
emmmm~ 提工单也是机械式回复,果然重启大法好!
更多关于HarmonyOS 鸿蒙Next 4 无法获取蓝牙 HCI 日志的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
更新下问题情况。
设备总共 3 台:
- 一台 P20 手机,鸿蒙 2 系统。
- 二台 W29 平板,鸿蒙 2 和鸿蒙 4 系统。
问题具体描述:
- 使用
adb pull /data/log/bt ./
和hdc file recv /data/log/bt ./
均无法导出 HCI 日志。- 使用
adb bugreport ./
导出设备系统日志,解压缩后在bugreport-MRR-W29-HUAWEIMRR-W29-2023-10-11-15-35-38
中并未发现BTSNOOP_LOG_SUMMARY
日志。
上面是目前可在设备上获取到蓝牙 HCI 日志的方式,全部可以在 P20 设备上获取到数据。
在 W29 鸿蒙 2 系统上,adb 和 hdc 方式均无效,adb bugreport 的方式可以找到BTSNOOP_LOG_SUMMARY
标记,但是数据很少,无法正常解析。
在 W29 鸿蒙 4 系统上,上述方式均无效,bugreport里BTSNOOP_LOG_SUMMARY
的影子都没了。
您好,请您通过在线提单进一步解决: https://developer.huawei.com/consumer/cn/support/feedback/#/
感谢您的反馈和支持。
工单已提交,谢谢。
另外,使用`adb bugreport` 导出日志,然后使用 btsnooz.py 的方式提取 HCI 日志也不行。
解压`bugreport`日志后,里面搜索完全没有`BTSNOOP_LOG_SUMMARY`相关数据。
题外:
通过 P20,鸿蒙 2.0 来验证上面多个命令(hdc没验证),都可获取到 HCI 日志。
查看了下 etc/bluetooth/bt_stack.conf
配置,发现开发者模式中的开关打开后,配置并未更新。
配置内信息依然是关闭。
# Enable BtSnoop logging function
# valid value : true, false
BtSnoopLogOutput=false
# BtSnoop log output file
BtSnoopFileName=/data/log/bt/btsnoop_hci.log
# Preserve existing BtSnoop log before overwriting
BtSnoopSaveLog=false
尝试了其他设备是没问题的。
在 HarmonyOS 鸿蒙Next 4 中,若无法获取蓝牙 HCI 日志,可能是以下原因导致的:
- 权限问题:确保应用已获取必要的蓝牙权限,如
ohos.permission.USE_BLUETOOTH
和ohos.permission.LOCATION
。 - 日志级别设置:检查日志级别是否设置为
DEBUG
或VERBOSE
,低级别日志可能无法捕获 HCI 数据。 - 系统限制:某些设备或系统版本可能限制了对 HCI 日志的访问,需确认设备是否支持。
- 调试模式:确保设备已启用开发者选项中的蓝牙调试模式。
- 工具支持:使用官方提供的调试工具,如
hdc
或DevEco Studio
,确保工具版本与系统兼容。
若问题仍未解决,建议查阅官方文档或联系技术支持。