Правильный способ подключения USB-аксессуаров

Каков правильный способ закрыть соединение с UsbAccessory в Android? Похоже, что даже в примере на складе Google, если я подключаюсь и аксессуар, выходим из приложения, а затем возвращаемся к нему, соединение не восстанавливается.

Если посмотреть внимательно, кажется, что после вызова функции close() в FileDescriptor он не будет открыт снова, и будет выведен журнал «не удалось открыть / dev / usb_accessory». НЕ вызывать функцию close() является плохой, поскольку блокировка потока при read() не будет выпущена. При физическом отключении / повторном подключении устройства все в порядке.

Кажется действительно удивительным, что простой случай использования приложения, а затем его открытие снова не работает в справочном приложении и даже более неожиданно, если это невозможно.

Я использую Android Nexus S под управлением Android 2.3.6.

Solutions Collecting From Web of "Правильный способ подключения USB-аксессуаров"

Проблема в том, что поток чтения никогда не выходит, поэтому файловый дескриптор остается открытым и не может быть снова открыт, когда приложение возобновлено.

Это подтверждено как ошибка: http://code.google.com/p/android/issues/detail?id=20545

Проголосуйте об этой ошибке, если вам это нравится.

Попробуйте повторно подключить два раза швы, чтобы первый раз, когда это было неуспешно, закроет соединение, а затем повторите попытку, чтобы открыть, это сработает! Для меня это сработало!