public AcceptThread() {
try {
// 通过UUID监听请求,然后获取到对应的服务端接口
serverSocket = mBluetoothAdapter
.listenUsingRfcommWithServiceRecord(NAME, MY_UUID);
} catch (Exception e) {
e.printStackTrace();
re_ms.setText("失败");
}
//socket.connect();
}
public void run() {
try {
//serverSocket.close();
// 接收其客户端的接口
socket= serverSocket.accept();
// 获取到输入流
re_msg.setText("ceshi");
// is = socket.getInputStream();
is =socket.getInputStream();
os =socket.getOutputStream();
// serverSocket.close();
re_msg.setText("ceshi");
// 获取到输出流
//os = socket.getOutputStream();
// 无线循环来接收数据
while (true) {
// 创建一个128字节的缓冲
byte[] buffer = new byte[128];
// 每次读取128字节,并保存其读取的角标
int count= is.read();
// 创建Message类,向handler发送数据
Message msg = new Message();
// 发送一个String的数据,让他向上转型为obj类型
msg.obj = new String(buffer, 0, count, "utf-8");
// 发送数据
handler.sendMessage(msg);
// re_msg.setText(a);
}
} catch (Exception e) {
// TODO: handle exception
re_msg.setText("失败");
e.printStackTrace();
}
}
}
这是线程程序,使用蓝牙接收不到数据,一直停在socket= serverSocket.accept();,debug查看soket=null,蓝牙确认连接上,可以实现发送数据的功能。找了两天也没有找到解决方法,跪求各位大神指点一下,感激不尽!