Специальные аксессуары

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

Как подключиться через USB

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

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

  • AOAv1. Поддерживает обмен данными с аксессуарами и отладку с помощью ADB.
  • AOAv2. Поддерживает возможности 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-src>/adk2012/app/) для Android из ADK 2012.

Как подключиться по Bluetooth

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