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

Аксессуар для 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 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).