【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,如果實際過程指定了串口號連接,需要使用指定的串口號連接。

發佈了29 篇原創文章 · 獲贊 14 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章