有过蓝牙调试经历的同学们可能都知道,在安卓系统中,在手机的设置–>开发人员页面下有一个开启蓝牙HCI信息收集日志选项开关,如下图中标红处, 打开该开关,就可以收集本机发送和接收的蓝牙HCI包。蓝牙包的数据会保存在btsnoop_hci.log文件中。
那么这个文件生成后被放在哪里了呢? 这个不同的手机放的位置可不一样。那么怎么知道我的手机上该文件放在哪呢? 我们可以通过下面的方法来查看。
adb shell cat /etc/bluetooth/bt_stack.conf
首先通过上面的adb命令看一下bt_stack.conf的内容, 你需要找到类似下面的这几行代码。
# BtSnoop log output file
BtSnoopFileName =/data/log/bt/btsnoop_hci.log <--日志文件位置
通常你还会看到下面几行代码,这一般反映你的HCI日志是否打开了。如果打开了,BtSnoopLogOutput的值应该会是true. 但这个也不一定,有的机器并不更新这个值。我的机器即使我通过设置打开了HCI日志开关,BtSnoopLogOutput的值还是false.