- Подключаем USB-устройства
- UsbAccessory
- UsbDevice
- UsbManager
- UsbDeviceConnection
- UsbInterface
- UsbEndpoint
- UsbRequest
- Подключение Android-устройств друг к другу по USB
- Этап 1: Проверка поддержки OTG
- Этап 2: Настройка режима USB
- Этап 3: Подключение устройств
- Решение некоторых проблем
- Устройства не распознают друг друга
- Устройства распознаются, но нет доступа к файловой системе
- Решение проблем с подключением Android-устройств посредством USB
Подключаем USB-устройства
5-й курс/Закрытая зона
Метки: UsbAccessory , UsbDevice , UsbManager , UsbDeviceConnection , UsbInterface , UsbEndpoint , UsbRequest
Android (API 12) поддерживает подключение к планшетам и смартфонам периферийных устройств через USB, например, мышки или флешки. Учтите, что не все модели могут поддерживать поддерживать подобную функциональность. Как правило, у планшетов это больше распространено. Я подключал мышку к своему Nexus 7 и в этом случае на экране появляется курсор. Кабель для подключения мышки (или других устройств) к планшету называют OTG.
Неплохо бы разбираться в интерфейсе USB, чтобы уметь принимать сигналы от подключаемых устройств.
Я расскажу только необходимый минимум, который нам понадобится.
Android-устройство может иметь два режима: USB device mode или USB host mode.
Когда мы подключаем телефон или планшет к компьютеру, то используется режим USB device mode. В этом случае питание идёт от компьютера к нашему устройству и оно заряжается. Если устройству требуется больше тока, чем может предоставить компьютер, то ему нужно иметь свой источник питания, но я такого не встречал пока.
Если мы подключаем какое-нибудь устройство к телефону или планшету через USB-порт, то в этом случае используется режим USB host mode. В этом режиме уже телефон обеспечивает питание для подключаемого гаджета, типа флешки, мышки и каких-то приборов и игрушек. Такой режим ещё называют OTG, возможно вы видели в продаже такие OTG-кабели. Они и позволяют подключить мышку к планшету.
Большинство устройств на Android при наличии порта OTG поддерживают на уровне системы классы устройств:
- Устройства ввода — клавиатуры, мыши, джойстики (HID)
- Накопители (Mass Storage)
Устройства типа модемов, сетевых адаптеров и вебкамер имеют ограниченную поддержку и зависят от модели вашего устройства.
Можно также упомянуть USB accessory mode, который появился с версии Android 3.0. Этот режим, например, используется при соединении телефона и фотокамеры.
Существует специальный стандарт, которого должны придерживаться все Android-устройства, использующие USB-порт. Следование стандарту обеспечивает совместимость и правильную работу устройств.
Основным пакетом для работы с протоколом USB является android.hardware.usb, который появился в Android 3.1 (API 12).
UsbAccessory
Класс UsbAccessory необходим при режиме USB accessory mode и позволяет узнать различную информацию о подключённом устройстве: название производителя, модель, версия и т.д.
UsbDevice
Класс UsbDevice отвечает за устройства, подключённые в режиме USB host mode и содержит информацию о возможностях, протоколе, классе и идентификаторе и т.д. При работе используется сервис UsbService, доступный через UsbHostManager
UsbManager
UsbManager — один из основных классов для работы с USB. Позволяет обмениваться информацией между устройствами, например, получить список присоединённых устройств.
UsbDeviceConnection
Класс UsbDeviceConnection содержит методы для отправки и получения данных.
UsbInterface
Класс UsbInterface отвечает за интерфейсы подключенных устройств.
UsbEndpoint
Класс UsbEndpoint отвечает за endpoint.
UsbRequest
Класс UsbRequest нужен для чтения и записи данных от устройств в асинхронном режиме.
Вы вошли на сайт, как гость.
Необходимо зарегистрироваться, чтобы прочитать статью
Источник
Подключение Android-устройств друг к другу по USB
Этап 1: Проверка поддержки OTG
Андроид-девайсы подключаются по ЮСБ через протокол OTG (On The Go), который, пусть и поддерживается почти повсеместно, в некоторых прошивках всё-таки отсутствует. Существует несколько способов проверки на совместимость устройства с данной технологией, ознакомиться с ними можно в статье далее.
Этап 2: Настройка режима USB
Для удачного подключения на девайсе, который будет соединяться с другим, нужно настроить работу ЮСБ. Делается это следующим образом:
- Сначала убедитесь, что на смартфоне (планшете) включён режим разработчика.
Перейдите по пунктам «Настройки» – «Система» – «Для разработчиков».
Этап 3: Подключение устройств
Непосредственное соединение обоих устройств происходит следующим образом:
- Приобретите кабель OTG, обычно они выглядят так.
Подождите, пока на смартфоне (планшете) появится сообщение о подключении.
Решение некоторых проблем
При совершении этой операции иногда возникают сбои, рассмотрим некоторые из них.
Устройства не распознают друг друга
Данная проблема самая распространённая, и её причин существует множество. Для определения верной надо произвести диагностику, алгоритм следующий:
- Первым делом попробуйте поочередно заменить переходник и кабель – как показывает практика, это самый частый источник сбоев.
- Также проверьте настройки обоих девайсов – возможно, на одном из них отключена работа с OTG.
- Нельзя исключать и неполадки с разъёмами телефонов – обычно их можно диагностировать по проблемам с зарядкой.
Устройства распознаются, но нет доступа к файловой системе
Это может означать две вещи – по каким-то причинам файловая система девайса определяется как доступная только для чтения. Попробуйте повторно подключить девайс, а если это не поможет, тогда не обойтись без форматирования внутренней памяти.
Помимо этой статьи, на сайте еще 12470 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Источник
Решение проблем с подключением Android-устройств посредством USB
USB (Universal Serial Bus) – дословно «универсальная последовательная шины». Это последовательный интерфейс для передачи данных, который широко используется в электронике и вычислительной технике, и мобильные устройства на основе операционной системы Android – не исключение.
Однако не всегда всё происходит достаточно гладко, могут возникать те или иные проблемы.
Однако, всё по порядку. Сначала давайте разберемся, какие существуют виды USB-разъемов. Всего их пять:
Слева направо: microUSB, miniUSB, B-type, A-type «мама», A-type «папа».
microUSB – самый небольшой из разъемов, используется в миниатюрных электронных устройствах вроде смартфонов, телефонов, планшетных компьютеров, электронных книг и так далее. В последнее время приобрел наибольшее распространение среди Android-устройств благодаря своей универсальности, практически вытеснив miniUSB.
miniUSB – несколько больше microUSB, но также используется в небольших электронных устройствах. В брендовых планшетах и смартфонах на Android практически не используется на сегодняшний день, хотя ранее был широко распространен. Впрочем, встречается в китайских девайсах, более того, благодаря дешевизне и простоте, некоторые более именитые китайские производители возвращаются к miniUSB, после некоторого периода установки microUSB в свои устройства. Чаще всего встречается в фотоаппаратах, камкордерах и так далее.
B-type – разъем, который чаще всего можно встретить в принтерах, сканерах и другой компьютерной периферии, когда размер особого значения не имеет.
A-type «мама» (приемник) – разъем, который устанавливается на персональных компьютерах и иногда на планшетах, для подключения коннектора A-type. Также этот тип разъема можно увидеть в USB-удлинителях и USB OTG кабелях.
A-type «папа» (коннектор) – для подключения в соответствующий приемник A-type.
Отдельно стоит упомянуть расширение спецификации USB 2.0 – USB OTG (USB On The Go), которое предназначено для лёгкого соединения периферийных устройств USB между собой. Это особенно актуально для планшетных компьютеров, смартфонов, электронных книг и других устройств на основе Android, так как при поддержке данной спецификации и при наличии соответствующего переходника-удлинителя USB OTG к мобильному устройству напрямую можно подключить флэш-накопители, фотоаппараты, внешние USB HDD и так далее.
Существует также некоторое количество проприетарных USB-разъемов, которые создают отдельно взятые компании, но постепенно такая практика уходит в прошлое – рынок в целом склоняется в сторону универсальных разъемов, и это несомненный плюс.
Теперь разберемся, что делать, если при подключении Android-устройства через USB-кабель к компьютеру, мобильный аппарат не определяется, а только заряжается (последнее свидетельствует о работоспособности разъема в целом – питание на него подается).
Для начала, перепроверяем, стоит ли галка в пункте «Настройки» — «Подключение к ПК» — «Спрашивать». Если она установлена, пробуем снять её и поставить заново.
Если это не помогло, пробуем использовать другой USB-кабель (чудеса китайской индустрии особенно склонны к выходу из строя), подсоединить его к другому USB-порту компьютера (настоятельно рекомендуется использовать порты, которые находятся сзади системного блока, если речь идёт о настольном ПК, так как данные порты непосредственно, без удлинителей, распаяны на материнской плате), в конце концов – попробовать другой компьютер для подключения, если есть такая возможность. Если ничего из вышеперечисленного не помогло, можно попробовать заменить флэш-карту на другую. Также не рекомендуется пользоваться никакими лишними переходниками или удлинителями – очень часто в них кроется причина неполадки.
Всё еще есть проблемы с подключением к ПК через USB? Не беда, идёт дальше. Запрещаем или удаляем Task Killer, если он установлен, или добавляем «Синхронизацию с ПК» в список исключений – данное приложение может банально запрещать устройству синхронизироваться с компьютером. Также можно попробовать включить «Отладку USB». Данный пункт находится в меню «Настроки» — «Приложения» — «Разработка»:
Если проблемное устройство – мобильный гаджет от Samsung, и компьютер его «не видит» ни через Kies, ни через Odin, то стоит попробовать полностью удалить Kies, все старые драйвера Samsung и Samsung PC Studio, после чего установить Kies заново. То же самое касается и аппаратов HTC с фирменной программой HTC Sync.
Может также помочь выбор драйвера для USB-устройства вручную. Для этого переходим в «Диспетчер устройств» в «Панели управления» Windows. Ищем проблемное устройство – оно будет отображаться с восклицательным знаком. Нажимаем на нём правой кнопкой мыши и выбираем «Обновить драйвер» — «Выбрать установку драйвера с компьютера» — «Выбрать драйвера из уже установленных». В списке выбираем универсальный контроллер USB – составное USB-устройство (иногда может подойти и драйвер от Microsoft). После этого система самостоятельно установит выбранный драйвер и устройством можно будет пользоваться в режиме USB-флэшки. Если вдруг выдало ошибку с «Синим экраном смерти», то необходимо перезагрузить компьютер в безопасном режиме, не отключая устройство. После загрузки Windows в безопасном режиме, ищем в «Диспетчере устройств» наш мобильный аппарат, нажимаем на нём правой кнопкой и удаляем драйвер. После этого можно попробовать «подсунуть» системе другой драйвер для работы с подключенным к USB девайсом – после чего оно может определиться нормально.
Как вариант, можно установить Android USB Driver. Также большинство программ для синхронизации Android-устройства с персональным компьютером, вроде HTC Sync или Samsung Kies, устанавливают свои драйвера. Важно – рекомендуем отключать антивирусные программы на компьютеры во время установки драйверов.
Иногда может помочь сброс к заводским настройкам (так называемый wipe) через настройки мобильного девайса, или же через режим Recovery. Сброс удалит все установленные пользователем приложения и восстановит стандартные заводские настройки.
Драйвера для устройств, перед тем как их переустановить, очень желательно еще и корректно удалить с персонального компьютера. Они зачастую скрываются в «Диспетчере устройств», как только девайс отключается или подает команду на скрытие. Часто «одноименные» драйвера могут конфликтовать из-за несоответствия версий. Что ж, приступим к очистке списка неиспользуемых устройств, что часто может быть причиной «неработоспособности» Android-гаджета при его подключении посредством USB. Во-первых, отключаем все внешние USB-устройства от компьютера. Создаем переменную среду DEVMGR_SHOW_NONPRESENT_DEVICES со значением 1. Чтобы сделать это, кликаем правой кнопкой мышки на «Мой компьютер», выбираем «Свойства», «Дополнительно», нажимаем «Переменные среды». В открывшемся окне вверху нажимаем кнопку «Создать». В поле «Имя переменной» вводим:
В поле «Значение переменной» вводим, соответственно, 1. Нажимаем два раза «Ок», чтобы закрыть меню.
Создав данную переменную, «Диспетчер устройств» будет показывать все установленные в системе драйвера, в том числе скрытые или когда-либо подключавшиеся к персональному компьютеру.
Заходим в «Диспетчер устройств», в пункте меню «Вид» выбираем «Показывать скрытые устройства». Теперь можно приступать к очистке операционной системы от разного «хлама». Для начала открываем раздел «Дисковые устройства». Нюанс в том, что при каждом подключении новой флешки для неё ставится новый драйвер, причем он ставится даже если подключить ту же самую флешку, но в другой USB-порт. Драйвера всех отключенных сменных носителей можно смело удалять, так как при подключении их к компьютеру драйвера для них будут установлены заново. Среди этих драйверов можно обнаружить и драйвер вашего Android-устройства, возможно установленный неправильно, и возможно даже не один. Данные записи также смело можно удалять, так как они могут вызывать неполадки – в любом случае, при переподключении имеющегося Android-девайса драйвер для него будет установлен заново или будет выдан запрос на установку пользователем. В разделе «Скрытые» устройства можно удалять абсолютно все скрытые (серые) устройства, так как это не что иное, как неудачные попытки поставить драйвер для какого-либо девайса, и они точно не нужны в системе. В разделе «Тома запоминающих устройств» также можно удалить все скрытые (серые) записи, так как это «буквы», присвоенные подключаемым ранее флешкам – в любом случае, при новом подключении флеш-накопителя, они будут присвоены заново. В разделе «Контроллеры универсальной последовательной шины USB» можно удалить все скрытые (серые) устройства. После выполнения очистки операционной системы от ненужных драйверов перезагружаем компьютер. После перезагрузки подключаем Android-девайс, он будет обнаружен операционной системой Windows как новое устройство, и для него автоматически будут установлены драйвера, или же вы можете установить нужные драйвера вручную. После еще одной перезагрузки компьютера все проблемы с конфликтными драйверами должны уйти в прошлое.
Источник