每当我尝试将android设备连接到启用bluettoth的设备时,我都会遇到异常,它正在连接并且在一两分钟内它会变得异常。 要使用BLuettoth设备(Spp配置文件)进行连接,我正在使用
Method m;
m = mmDevice.getClass().getMethod("createRfcommSocket",
new Class[] { int.class });
tmp = (BluetoothSocket) m.invoke(mmDevice, 1);
使用此代码,我可以连接到设备。但是在这行bytes = mmInStream.read(缓冲区),我得到异常,每分钟几分钟。我可以用
if(mmInStream.available() > 0) {
bytes = mmInStream.read(buffer);
}
但如果我把条件放在这里,它无法理解设备是否仍与其他设备连接。因为不会发生异常。 我找不到解决方案并试了2天。但是我找不到解决方案。
你能帮帮我吗?
提前致谢
答案 0 :(得分:0)
我遇到了与蓝牙广播后启动的服务器相同的问题。解决方案是在服务器通过BluetoothServerSocket.accept()建立连接后发送一个字节。客户端在BluetoothSocket.connect()之后读取一个字节。所以两端都是同步的。