HarmonyOS 鸿蒙Next 4 无法获取蓝牙 HCI 日志

HarmonyOS 鸿蒙Next 4 无法获取蓝牙 HCI 日志 问题描述:

  • 使用应用内操作蓝牙后,无法记录蓝牙 HCI 日志

具体描述:

  • 应用通过 BleManager 来扫描、连接及操作蓝牙外设,计划调试下连接过程。在调试模式下打开蓝牙 HCI 日志收集后,通过 adbhdc 命令都无法获取到日志问题,提示无目录或文件。
  • 命令都是遵循鸿蒙论坛提供的,怀疑是没有正常收集到日志文件。

疑惑

  • 没有通过系统设置中的蓝牙进行连接,而是通过应用内调用 API 操作蓝牙,是否会应用 HCI 日志的收集?
7 回复

问题解决了,开启 HCI 日志情况下重启设备即可。

emmmm~ 提工单也是机械式回复,果然重启大法好!

更多关于HarmonyOS 鸿蒙Next 4 无法获取蓝牙 HCI 日志的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


更新下问题情况。

设备总共 3 台:

  • 一台 P20 手机,鸿蒙 2 系统。
  • 二台 W29 平板,鸿蒙 2 和鸿蒙 4 系统。

问题具体描述:

  1. 使用adb pull /data/log/bt ./hdc file recv /data/log/bt ./ 均无法导出 HCI 日志。
  2. 使用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 日志,可能是以下原因导致的:

  1. 权限问题:确保应用已获取必要的蓝牙权限,如 ohos.permission.USE_BLUETOOTHohos.permission.LOCATION
  2. 日志级别设置:检查日志级别是否设置为 DEBUGVERBOSE,低级别日志可能无法捕获 HCI 数据。
  3. 系统限制:某些设备或系统版本可能限制了对 HCI 日志的访问,需确认设备是否支持。
  4. 调试模式:确保设备已启用开发者选项中的蓝牙调试模式。
  5. 工具支持:使用官方提供的调试工具,如 hdcDevEco Studio,确保工具版本与系统兼容。

若问题仍未解决,建议查阅官方文档或联系技术支持。

回到顶部