Программирование Android Программы для работы с USB Thu, November 21 2024  

Поделиться

Нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.


Программы для работы с USB Печать
Добавил(а) microsin   

Программы для Android, которые полезны для работы с шиной USB.

1. USB Host Diagnostics site:play.google.com.

Программа определяет возможности Android как хоста USB - позволяет ли аппаратура и версия операционной системы работать с устройствами USB. Приложение бесплатное.

Android-USB-Host-Diagnostics

Хост USB является очень полезной функцией для смартфонов и планшетов, работающих на Android, однако некоторые прошивки (заводские и кустарные) не поддерживают эту опцию, или работают некорректно.

Например, для Galaxy Nexus сообщалось (в том числе и в магазине приложений Google), что он поддерживает USB host, но на самом деле хост не работал (это было исправлено в обновлении Android 4.0.2). Это привело к неработоспособности некоторых программ.

Это только один пример из множества. Также бывают случаи, когда поставщики OEM декларируют поддержку USB хост, но аппарат на самом деле эту функцию не предоставляет. Это случается, когда поддержка хоста USB не была протестирована компанией Google, или когда OEM поспешил с выпуском новой прошивки для модели Android.

Это приложение было создано для того, чтобы иметь возможность самостоятельно протестировать функцию хоста USB, и не зависеть от Google или от поставщиков OEM. Разработчик программы предлагает пользователям передать (с соглашения пользователя) результаты тестирования на сайт программы, чтобы расширить информационную базу данных для устройств и прошивок Android касательно поддержки хоста USB. Программа может также оказаться полезной при портировании прошивок Anroid на различное железо.

Требования к Android:

- Версия Android 2.3.1 или более новая.
- (не обязательно) права Root
- Наличие кабеля USB OTG cable [1] (если конечно в Вашем устройстве Android отсутствует полноразмерный порт USB).
- Флешка USB или любое другое устройство USB - чтобы протестировать соединение с ним.

База данных результатов тестирования доступна здесь: http://usbhost.chainfire.eu/
Конференция разработчиков XDA здесь: http://forum.xda-developers.com/showthread.php?t=1493325

2. USB Device Info site:play.google.com.

Начиная с версии Android 3.1 представлена поддержка режима хоста USB, которая позволяет пользователю подключить к смартфону или планшету Android различные устройства USB точно так же, как их подключают к обычному компьютеру или ноутбуку, чтобы расширить функционал. Это приложение предоставляет информацию почти обо всех подключенных к Android устройствах USB (см. ниже о том, что подразумевается под 'почти'). Программа бесплатна, и предоставляет доступ к исходному коду (проект можно скомпилировать в Eclipse/ADT или Android Studio).

Android-USB-device-info1 Android-USB-device-info2 Android-USB-device-info3 Android-USB-device-info4

Информация об устройствах USB включает в себя:

• Класс устройства USB.
• Путь к устройству USB в операционной системе Android.
• Числовой идентификатор производителя (Vendor ID, VID), и числовой идентификатор продукта (Product ID, PID).
• Список всех интерфейсов и всех конечных точек устройства.

Если после установки программы Вы закачаете базу данных об устройствах, то приложение также может предоставить дополнительную информацию о производителе/вендоре (Vendor, причем необязательно, что это будет известный бренд!), логотип вендора и имя продукта.

Для сбора информации об устройстве USB приложение использует 2 разных метода:

1. Режим Android, в котором для получения информации используется обычный программный интерфейс для USB, предоставленный и описанный Google (native android USB API).
2. Режим Linux, в котором делается парсинг папки /sys/bus/usb/devices/.

Каждый из этих двух режимов (Android/Linux) предоставит несколько разную информацию, т. е. информация одного режима дополняет информацию из другого, создавая более цельную картину. Например, режим Android даст Вам более полную информацию о конечных точках и интерфейсах устройства USB, в то время как режим Linux даст больше информации о самом устройстве USB (серийный номер, как устройство идентифицирует себя, заявленный ток потребления от шины USB и т. п.). Описание подклассов может быть добавлено в следующих версиях.

Приложение было написано с целью исследования нового USB host API и его тонкостей.

• База данных устройств USB: http://www.linux-usb.org/usb.ids
• Все логотипы компаний-производителей устройств USB являются их собственностью.
• В программе отсутствует реклама и она бесплатна.
• Исходный код программы доступен: https://github.com/alt236/USB-Device-Info---Android

3. USB device data site:play.google.com.

Программа выводит список всех устройств USB, которые подключены в настоящий момент к Android.

Android-USB-device-data1 Android-USB-device-data2 Android-USB-device-data3

4. Read iManufacturer and iProduct of USB Device from raw Device Descriptors.

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

AndroidUSBHost-read-raw-descriptors-USD-device-android-er.blogspot.ru

[Ссылки]

1. Как сделать для смартфона Android кабель microUSB OTG.

 

Добавить комментарий


Защитный код
Обновить

Top of Page