所以我得到这个错误: W/System.err: java.io.IOException: read failed, socket might closed or timeout, read ret: -1
我正在尝试在Samsung Galaxy S4(API 21)和S2(API 16)上通过蓝牙连接到自定义设备。有时它可以工作。我不知道会发生什么。
我知道还有其他答案的问题,但我觉得我已经看完了。
所以我的连接代码:
private class ConnectAsyncTask extends AsyncTask<String, Void, Boolean> {
@Override
protected Boolean doInBackground(String... params) {
try {
Thread.sleep(5000);
UUID uuid = UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");
mBluetoothDevice = mBluetoothAdapter.getRemoteDevice(params[0]);
mBluetoothSocket = mBluetoothDevice
.createRfcommSocketToServiceRecord(uuid);
mBluetoothSocket.connect();
mOutputStream = mBluetoothSocket.getOutputStream();
mInputStream = mBluetoothSocket.getInputStream();
return true;
} catch (Exception e) {
e.printStackTrace();
try {
mBluetoothSocket.close();
} catch (Exception e1) {
e1.printStackTrace();
}
return false;
}
}
@Override
protected void onPostExecute(Boolean aBoolean) {
if (aBoolean) {
connectDeviceCallback.onDeviceConnected(null);
startReceiverThread();
startSendingThread();
} else {
connectDeviceCallback.onError("An error occured");
}
}
}
发生错误mBluetoothSocket.connect()
。
我的手机离设备太远,无法正确连接。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句