22

UsbAccessory在 Android中关闭与 a 的连接的正确方法是什么?似乎即使在股票谷歌示例中,如果我连接和附件,退出应用程序然后返回它,连接不会重新建立。

仔细一看,好像调用close()了之后FileDescriptor,就再也打不开了,并且发出了“could not open /dev/usb_accessory”的日志。不调用close()是一个不好的选择,因为read()不会释放线程阻塞。物理断开/重新连接设备后一切正常。

退出应用程序然后再次打开它的简单用例在参考应用程序中不起作用,这似乎真的很令人惊讶,如果它不可行,那就更令人惊讶了。

我正在使用运行库存 Android 2.3.6 的 Nexus S。

4

2 回答 2

16

问题是读取线程永远不会退出,因此文件描述符保持打开状态,并且在应用程序恢复时无法再次打开。

这已被确认是一个错误: http ://code.google.com/p/android/issues/detail?id=20545

如果您关心此错误,请投票。

于 2011-11-27T07:58:54.050 回答
0

尝试重新连接两次它接缝,第一次不成功将关闭连接,然后再次尝试打开它会工作!对我来说它有效!

于 2015-01-15T08:15:46.417 回答