Android蓝牙套接字无法断开连接
我正在开发一个基于BluetoothChat示例的应用程序,一个设备发送另一个设备参数,第二个设备发送数据。我认为问题出在Connected thread run()方法中,我必须编辑该方法,因为原始版本接收数据的顺序不正确。如果我关闭在一个设备上运行的程序,第二个设备仍然连接到断开连接的设备Android蓝牙套接字无法断开连接,android,sockets,bluetooth,Android,Sockets,Bluetooth,我正在开发一个基于BluetoothChat示例的应用程序,一个设备发送另一个设备参数,第二个设备发送数据。我认为问题出在Connected thread run()方法中,我必须编辑该方法,因为原始版本接收数据的顺序不正确。如果我关闭在一个设备上运行的程序,第二个设备仍然连接到断开连接的设备 public void run() { int bytes; int availableBytes=0; while (true) {
public void run() {
int bytes;
int availableBytes=0;
while (true) {
try {
availableBytes=mmInStream.available();
byte[] buffer = new byte[availableBytes];
// Read from the InputStream
bytes = mmInStream.read(buffer);
if (bytes>0){
mHandler.obtainMessage(Constants.MESSAGE_READ, bytes, -1, buffer)
.sendToTarget();
}
// Send the obtained bytes to the UI Activity
} catch (IOException e) {
connectionLost();
// Start the service over to restart listening mode
BluetoothClientService.this.start();
break;
}
}
}
无法重新启动线程。Javadoc中特别警告您使用
available()
的方式。为什么不能重新启动线程?。。。。问题是异常不是由我不知道为什么引发的。