如何查看安卓手机中已配对蓝牙设备信息

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何查看安卓手机中已配对蓝牙设备信息相关的知识,希望对你有一定的参考价值。

如何查看安卓手机中已配对蓝牙设备信息,有需要的朋友可以参考下。

抓蓝牙空中包的时候最蛋疼的就是遇到SSP(安全简单配对),因为这时候的LinkKey不是通过pincode生成的,连接加密之后就无法解析数据包了。有两种方法来直接获得LinkKey,一是抓HCI log另一种方法就是到手机里查找LinkKey。

方法是用adb cat以下文件:

/data/misc/bluedroid/bt_config.xml

通过name或者bdaddr找到相关设备,要注意的是LinkKey的大小端

<N4 Tag="00:0d:fd:36:ab:00"> <N1 Tag="Timestamp" Type="int">1395734997</N1> <N2 Tag="DevClass" Type="int">2360324</N2> <N3 Tag="DevType" Type="int">1</N3> <N4 Tag="AddrType" Type="int">0</N4> <N5 Tag="Name" Type="string">Motorola S305</N5> <N6 Tag="LinkKeyType" Type="int">0</N6> <N7 Tag="PinLength" Type="int">0</N7> <N8 Tag="LinkKey" Type="binary">b16285e94d9afd4db882f101bb7494fd</N8> <N9 Tag="Manufacturer" Type="int">10</N9> <N10 Tag="LmpVer" Type="int">4</N10> <N11 Tag="LmpSubVer" Type="int">5363</N11> <N12 Tag="Service" Type="string">0000111e-0000-1000-8000-00805f9b34fb 0000110b-0000-1000-8000-00805f9b34fb 0000110e-0000-1000-8000-00805f9b34fb </N12>

文章来自: 年轻网(www.nqwang.com) 原文:http://www.nqwang.com/2014/0326/91257.html
参考技术A 在手机中找到设置---点开-----一般会在WLAN 下面----蓝牙----打开 可以看到各种蓝牙已应用的信息 参考技术B 打开蓝牙设置里面就可以看到了。 参考技术C 方法是用adb cat以下文件:

/data/misc/bluedroid/bt_config.xml

通过name或者bdaddr找到相关设备,要注意的是LinkKey的大小端

<N4 Tag="00:0d:fd:36:ab:00"> <N1 Tag="Timestamp" Type="int">1395734997</N1> <N2 Tag="DevClass" Type="int">2360324</N2> <N3 Tag="DevType" Type="int">1</N3> <N4 Tag="AddrType" Type="int">0</N4> <N5 Tag="Name" Type="string">Motorola S305</N5> <N6 Tag="LinkKeyType" Type="int">0</N6> <N7 Tag="PinLength" Type="int">0</N7> <N8 Tag="LinkKey" Type="binary">b16285e94d9afd4db882f101bb7494fd</N8> <N9 Tag="Manufacturer" Type="int">10</N9> <N10 Tag="LmpVer" Type="int">4</N10> <N11 Tag="LmpSubVer" Type="int">5363</N11> <N12 Tag="Service" Type="string">0000111e-0000-1000-8000-00805f9b34fb 0000110b-0000-1000-8000-00805f9b34fb 0000110e-0000-1000-8000-00805f9b34fb </N12>
参考技术D 打开蓝牙 再点一配对

Android -- 蓝牙蓝牙配对和蓝牙连接

文章目录

一、蓝牙配对


搜索到蓝牙设备后,将设备信息填充到listview中,点击listiew则请求配对

蓝牙配对有点击配对和自动配对,点击配对就是我们选择设备两个手机弹出配对确认框,点击确认后配对

自动配对就是搜索到蓝牙设备后自动配对不需要输入pin码,但在基本开发中都不采用这种方式,所以这里说的是第一种配对方式

点击配对,调用

BluetoothDevice.class.getMethod

进行配对,代码如下:

Method method = BluetoothDevice.class.getMethod("createBond");
Log.e(getPackageName(), "开始配对");
method.invoke(listdevice.get(position));

同样的,如果我们想要配对的设备取消配对

只需要将 creatBond 改为 removeBond

二、蓝牙连接

配对成功之后,就可以进行蓝牙连接了,蓝牙连接操作比较耗时,可以在一个线程中进行:

1. 调用自己定义的

connect(listdevice.get(position));

同样传递的参数也是设备device

首先声明蓝牙套接字:

private BluetoothSocket mBluetoothSocket;
...
mBluetoothSocket = bluetoothDevice.createRfcommSocketToServiceRecord(BltContant.SPP_UUID);

BltContant.SPP_UUID 是一个 UUID 常量,至于 UUID 是什么,大家可以自行百度,因为详细的文章已经很多了。

连接的时候要先判断蓝牙是否在扫描,如果在扫描就停止扫描,并且没有连接才进行连接,代码如下:

if (bluetoothadapter.isDiscovering()) 
    bluetoothadapter.cancelDiscovery();

if (!mBluetoothSocket.isConnected()) 
    mBluetoothSocket.connect();

当连接成功时,我们要让被连接的那部手机也自动跳转到聊天页面,所以我们要开启蓝牙服务端等待设备的连接,当设备连接时,自动跳转页面,蓝牙服务端代码如下:

/**
 * 开启服务端
 */
public void startBluService() 
 
    while (true) 
        try 
            if (getBluetoothServerSocket() == null)
                Log.e("在这里获取的为空","在这里获取的为空");
            
            bluetoothSocket = getBluetoothServerSocket().accept();
            if (bluetoothSocket != null) 
                APP.bluetoothSocket = bluetoothSocket;
                EventBus.getDefault().post(new BluRxBean(SERVER_ACCEPT, bluetoothSocket.getRemoteDevice()));
                //如果你的蓝牙设备只是一对一的连接,则执行以下代码
                getBluetoothServerSocket().close();
                //如果你的蓝牙设备是一对多的,则应该调用break;跳出循环
                //break;
            
         catch (IOException e) 
            e.printStackTrace();
        
    

以上是关于如何查看安卓手机中已配对蓝牙设备信息的主要内容,如果未能解决你的问题,请参考以下文章

什么是手机配对,

三星翻盖手机如何关闭蓝牙

阿凡达蓝牙扫码枪怎么连接安卓手机

安卓手机传递文件到Windows系统电脑

盘古手柄:安卓快速上手

苹果手机如何关闭车载蓝牙设备配置选项输入法