在Android中成功建立蓝牙连接

时间:2014-01-21 05:06:39

标签: android bluetooth android-4.4-kitkat cyanogenmod

我对在Android中建立BT连接的两种方法感到困惑。

这是我所做的,只要我记得,它已经从2.3+设备到早期的4.x.这也是Android docs describe

private static final UUID sppUUID = UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");
bluetoothSocket = bluetoothDevice.createRfcommSocketToServiceRecord(sppUUID);
bluetoothSocket.connect();

这已停止在一些较新的Androids(运行4.4的Nexus 7),Cyanogenmod上使用此结果(或类似):

java.io.IOException: read failed, socket might closed or timeout, read ret: -1

经过多次颠簸 - 大部分都在SO! - 我觉得这很有效

Method m = bluetoothDevice.getClass().getMethod("createRfcommSocket", new Class[] { int.class });
bluetoothSocket = (BluetoothSocket) m.invoke(bluetoothDevice, 1);
bluetoothSocket.connect();

这是从哪里来的?为什么这比其他方法更有效?

谢谢

0 个答案:

没有答案