Android蓝牙开发—— 经典蓝牙连接方法

Posted 摸爬滚打的程序媛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android蓝牙开发—— 经典蓝牙连接方法相关的知识,希望对你有一定的参考价值。

一、官方API

android官方API给出的经典蓝牙连接方法有2个

  • createRfcommSocketToServiceRecord
    该方法建立的是一种安全的连接。意思就是,与蓝牙设备建立连接时,如果与蓝牙设备没有建立过配对关系,那么连接时会先去建立配对关系,然后再执行连接;如果与蓝牙设备已建立了配对关系,那么就会直接执行连接。
    调用的结果是,连接成功的同时也配对成功了。
//建立安全的蓝牙连接
BluetoothSocket BluetoothSocket 
= bluetoothDevice.createRfcommSocketToServiceRecord(UUID.fromString(uuid));
  • createInsecureRfcommSocketToServiceRecord
    该方法建立的是一种非安全的连接。意思就是,与蓝牙设备建立连接时,如果与蓝牙设备没有建立过配对关系,就会跳过配对过程,直接执行连接。
    调用的结果是,连接成功了,但是没有建立配对关系。
//建立不安全的蓝牙连接
BluetoothSocket BluetoothSocket 
= bluetoothDevice.createInsecureRfcommSocketToServiceRecord(UUID.fromString(uuid));
二、通过反射获取的串口号连接的方法

反射方法获取的通过串口号连接方法有2个:

BluetoothSocket BluetoothSocket 
= (BluetoothSocket)mmDevice.getClass().getMethod("createRfcommSocket",new Class[] int.class).invoke(bluetoothDevice,channel);
BluetoothSocket BluetoothSocket 
= (BluetoothSocket) mmDevice.getClass().getMethod("createInsecureRfcommSocket",new Class[] int.class).invoke(bluetoothDevice,channel);

默认串口号为1,如果实际过程指定了串口号连接,需要使用指定的串口号连接。

以上是关于Android蓝牙开发—— 经典蓝牙连接方法的主要内容,如果未能解决你的问题,请参考以下文章

Android 经典蓝牙开发(一)

Android蓝牙开发(二)经典蓝牙消息传输实现

android开发SPP经典蓝牙

Android 低功耗蓝牙开发(扫描连接)

Android 低功耗蓝牙开发(扫描连接)

Android 低功耗蓝牙开发(扫描连接)