我正在使用基于BluetoothChat示例的应用程序,一台设备发送另一台设备参数,第二台设备发送数据。我认为问题出在Connected thread run()方法中,我必须编辑它,因为原始版本接收数据的顺序不正确。如果我关闭在一个设备上运行的程序,则第二个设备仍然连接到断开的设备。
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;
}
}
}