HTC希望BluetoothSocket连接冻结

时间:2012-08-15 14:25:09

标签: android bluetooth

我在项目上工作,涉及BT连接。我已经用Nexus S,Nexus Galaxy这样的手机进行了测试,一切都运行良好。 问题在于HTC的愿望。首先,我必须通过端口连接到PC,所以我使用反射

Method m = device.getClass().getMethod("createRfcommSocket",
            new Class[] { int.class });
BluetoothSocket socket = (BluetoothSocket) m.invoke(device, port);
socket.connect();

socket.connect()永远冻结线程,就像socket.close(); 同样来自Android日志,我可以看到奇怪的消息:

  USERIAL_Ioctl:BT_Sleep,USERIAL_IO_BT_WAKE_DEASSERT

重新启动没有帮助。但奇怪的是,这个问题不时可以重现。

感谢您提出任何意见。

1 个答案:

答案 0 :(得分:0)

有一种解决方法。 应该从另一个线程调用Socket.connect()。

如果它会阻止执行线程,我们可以使用它来阻止它 Socket.close();

相关问题