Пользовательские аксессуары

Аксессуаром для Android может быть все что угодно: клавиатура, термометр, робот, регулятор освещения или все, что вы только можете себе представить. Все аксессуары Android каким-то образом подключаются к устройству Android, поэтому при создании аксессуара необходимо учитывать тип подключения, который будет использовать ваш аксессуар. На этой странице представлен краткий обзор вариантов подключения аксессуара Android и список ресурсов, которые помогут вам начать работу.

Подключение через USB

Аксессуар, который подключается к устройству Android через USB-кабель, должен поддерживать протокол Android Open Accessory (AOA), который указывает, как аксессуар может установить связь с устройством Android через USB. Из-за низкой выходной мощности устройств Android, AOA требует, чтобы аксессуар действовал как USB-хост, то есть подключаемый аксессуар должен питать шину.

AOA имеет две версии, которые поддерживают разные типы связи:

  • АОАв1 . Поддерживает общую связь с аксессуарами и отладку adb.
  • АОАв2 . Поддерживает возможности устройства с интерфейсом пользователя (HID). Доступно в Android 4.1 (уровень API 16) или выше.

Если вы используете общий протокол аксессуара для связи с вашим аксессуаром (а не протокол adb или аудио), вы должны предоставить приложение Android, которое может обнаружить подключение вашего USB-аксессуара и установить связь.

Следующие шаги

Чтобы приступить к созданию аксессуара для Android, использующего USB-подключение:

  • Выберите аппаратную платформу или создайте аппаратное устройство, поддерживающее режим USB-хоста.
  • Ознакомьтесь со спецификациями AOA , чтобы понять, как реализовать этот протокол на вспомогательном оборудовании.
  • Просмотрите исходный код микропрограммы ADK 2012 ( <adk-src>/adk2012/board/library/ADK2/ ), в котором демонстрируется реализация аксессуара с использованием USB-подключения для общей передачи данных и потокового аудио.
  • Если вы планируете создать приложение для Android, которое взаимодействует с вашим аксессуаром через USB, просмотрите исходный код приложения ADK 2012 для Android ( <adk-src>/adk2012/app/ ).

Подключение через Bluetooth

Аксессуар, который подключается к устройствам Android через соединение Bluetooth, может использовать профили подключения, поддерживаемые Android, включая профиль Simple Serial Protocol (SSP) и Advanced Audio Distribution Profile (A2DP). Аксессуар, который использует Bluetooth для подключения к устройствам Android, должен поддерживать связь Bluetooth и по крайней мере один из поддерживаемых профилей подключения.

Чтобы использовать аксессуар, пользователи должны включить Bluetooth на своем устройстве Android и выполнить сопряжение с вашим аксессуаром. Вы также можете предоставить дополнительное приложение для Android, которое обрабатывает специализированную связь, такую ​​как ввод данных или управление выходами, для взаимодействия с вашим аксессуаром.

Следующие шаги

Чтобы приступить к созданию аксессуара для Android, использующего соединение Bluetooth:

  • Выберите аппаратную платформу или создайте аппаратное устройство, которое может поддерживать связь Bluetooth и профиль подключения, поддерживаемый Android, например SSP или A2DP.
  • Просмотрите исходный код микропрограммы ADK 2012 ( <adk-src>/adk2012/board/library/ADK2/ ), который включает пример реализации общей передачи данных и потоковой передачи аудио с использованием соединения Bluetooth.
  • Если вы планируете создать приложение для Android, которое взаимодействует с вашим аксессуаром через Bluetooth, просмотрите исходный код приложения ADK 2012 для Android ( <adk-src>/adk2012/app/ ).

Примечание . Исходный код ADK 2012 включает стек Bluetooth с открытым исходным кодом, созданный для чипа Texas Instruments CC2564, но предназначенный для работы с любым чипом Bluetooth, поддерживающим стандартный интерфейс хост-контроллер (HCI).