2016-11-10 10 views
1

Где поддержка USB-класса, реализованная на устройствах Android, находится ли она на версии ANDROID или на уровне чипсета?Класс USB на android

Другими словами, если я хочу знать, поддерживает ли какой-либо конкретный смартфон, например, класс UVC, нужно ли мне проверить набор микросхем или версию Android, чтобы узнать ответ на этот вопрос?

+0

Если вы хотите использовать определенный USB-устройство в качестве USB-клиента, подключенного к вашему телефону Android, для телефона Android требуется драйвер для разговора с USB-устройством. AFAIK драйвер должен присутствовать в ядре Android/Linux. К сожалению, ядро ​​на каждом устройстве той же версии Android похоже, но не то же самое (потому что каждый производитель модифицирует его). Поэтому, если USB-устройство поддерживается или не меняется от смартфона до смартфона. – Robert

+0

Спасибо, это очень полезно. Знаете ли вы, есть ли способ получить эту информацию от поставщиков, они рекламируют эту информацию? – Udi

+0

Я не тестировал его, но этот вопрос может оказаться полезным для перечисления драйверов ядра: [Как я могу получить список всех активных драйверов ядра в системе Android?] (Http://stackoverflow.com/questions/8901631/how -может-я-найми-список-на-все-в-активных ядре водителей-на-мой-андроида-системы). – Robert

ответ

1

Официальный способ определить, имеет ли устройство USB-хост возможность использовать связанную системную функцию.

В идеале, добавьте элемент <uses-feature> в свой манифест, указав, что вас интересует функция . Если вам не нужна эта функция, добавьте android:required="false" в качестве атрибута.

Если вы пошли с android:required="false", и вы хотите, чтобы определить, является ли устройство USB хоста во время выполнения, используйте PackageManager, hasSystemFeature() и FEATURE_USB_HOST. FEATURE_USB_HOST определяется как та же строка, что и в <uses-feature> (android.hardware.usb.host).

 Смежные вопросы

  • Нет связанных вопросов^_^