我想从Android设备中的应用程序连接到远程设备(配对)。远程设备是HC-05模块 我的代码是:
UUID uuid = UUID.fromString("00001101-0000-1000-8000-00805f9b34fb"); //Standard SerialPortService ID
try {
mSocket = MyDevice.createRfcommSocketToServiceRecord(uuid);
} catch (IOException e) {
Toast.makeText(this, "S", Toast.LENGTH_SHORT).show();
}
ba.cancelDiscovery();
try {
mSocket.connect();
} catch (IOException e){
Toast.makeText(this, e.getLocalizedMessage(), Toast.LENGTH_SHORT).show();
Log.e("YOUR_APP_LOG_TAG1", "I got an error", e);
}
try {
mOutputStream = mSocket.getOutputStream();
mInputStream = mSocket.getInputStream();
} catch (IOException e) {
Toast.makeText(this, "io", Toast.LENGTH_SHORT).show();
}
但是我在行mSocket.connect()中收到错误。
错误:
读取失败的套接字可能已关闭或超时读取
请帮忙。
答案 0 :(得分:-2)
这可能是由许多事情造成的 - 在我的案例中我找到了三个:
电源问题 - HC-05不稳定,即使它没有显示出明显的LED闪烁模式。电池更换固定了这一点。
另一台设备与HC-05配对,有时“偷”连接。可能通过一些使用AT命令的设置来修复,但我只是简单地取消了除了一个设备之外的所有设置。
设备已关闭/超出范围。