Службы Bluetooth

Через Bluetooth устройства могут передавать данные, которые можно использовать для интерактивных услуг, таких как аудио, обмен сообщениями и телефония. Профили Bluetooth, используемые для различных служб, можно найти в include/hardware/bluetooth.h .

Аудио

Соединение Bluetooth позволяет пользователям передавать потоковое аудио на устройства с поддержкой Bluetooth. В большинстве случаев использования звука устройство Android является источником, а устройство рендеринга, например динамик или гарнитура, — приемником.

Абсолютный регулятор громкости

В Android 6.0 и более поздних версиях стек Android Bluetooth позволяет источнику устанавливать абсолютную громкость, предоставляя пользователям точный контроль над громкостью звука. Исходное устройство отправляет в приемник незатухающий звук и информацию о громкости. Затем приемник усиливает звук в соответствии с информацией о громкости, поэтому пользователи слышат точную громкость воспроизведения.

Исходное устройство также может регистрировать уведомления о громкости. При изменении громкости с помощью элементов управления на приемнике приемник отправляет уведомление источнику. Это позволяет источнику точно отображать информацию об объеме в пользовательском интерфейсе.

Абсолютная регулировка громкости включена по умолчанию. Чтобы отключить абсолютную регулировку громкости, пользователи могут перейти в « Настройки »> « Система» > «Параметры разработчика » и выбрать переключатель « Отключить абсолютную громкость ».

Расширенные аудиокодеки

В Android 8.0 устройства, использующие расширенный профиль распространения аудио (A2DP), могут поддерживать дополнительные аудиокодеки. Стек Bluetooth поддерживает согласование аудиокодеков, когда устройства подключаются к удаленному аудиоприемнику. Это согласование выбирает лучший кодек, поддерживаемый как отправителем, так и приемником, для обеспечения высококачественного звука. После выбора весь звук направляется через выбранный кодировщик, а затем отправляется в приемник.

Реализация

Устройства под управлением Android 8.0, поддерживающие A2DP, автоматически получают дополнительную поддержку кодека. Производителям устройств может потребоваться получить отдельные лицензии и двоичные объекты для некоторых проприетарных аудиокодеков. Помимо SBC, Android 8.0 поддерживает следующие кодеки:

  • ААС
  • aptX
  • APTX HD
  • LDAC

Производители устройств могут выбирать, какие кодеки их устройства пытаются использовать в первую очередь. Установите приоритеты кодеков, изменив следующие значения в res/values/config.xml :

  <!-- Configuring priorities of A2DP source codecs. Larger value means
          higher priority. Value -1 means the codec is disabled.
          Value 0 is reserved and should not be used here. Enabled codecs
          should have priorities in the interval [1, 999999], and each
          priority value should be unique. -->
        <integer name="a2dp_source_codec_priority_sbc">1001</integer>
        <integer name="a2dp_source_codec_priority_aac">2001</integer>
        <integer name="a2dp_source_codec_priority_aptx">3001</integer>
        <integer name="a2dp_source_codec_priority_aptx_hd">4001</integer>
        <integer name="a2dp_source_codec_priority_ldac">5001</integer>
      

Сертификация LDAC

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

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

Особенности пользовательского интерфейса

Наряду с дополнительной поддержкой кодеков в Android 8.0 предусмотрена пользовательская настройка для отключения аудиокодеков высокой четкости (HD) Bluetooth.

  1. Перейдите в « Настройки » > «Подключенные устройства » > «Bluetooth ».
  2. Нажмите на значок шестеренки рядом с приемником, для которого вы хотите отключить кодеки.
  3. Снимите флажок HD Audio .

Производители устройств, которые настраивают параметры, должны предоставить пользователям возможность отключать кодеки HD.

Обмен сообщениями

Обмен сообщениями через Bluetooth позволяет пользователям читать, просматривать и составлять SMS-сообщения с удаленного устройства. Эта возможность часто используется при подключении телефона к бортовой информационно-развлекательной системе.

Телефония

Службы телефонии Bluetooth позволяют пользователям передавать звонки и синхронизировать контакты с телефона на другое устройство Bluetooth. Эти функции часто используются для звонков в режиме громкой связи во время вождения.

В Android 8.0 Bluetooth поддерживает внутриполосную мелодию звонка. Когда на телефон, подключенный по Bluetooth, поступает входящий звонок, на стоке воспроизводится рингтон. Включите внутриполосный рингтон в меню « Настройки » > « Система» > «Параметры разработчика », установив переключатель « Включить внутриполосный звонок ».

Функции Bluetooth

Для реализации услуг Bluetooth стек Bluetooth поддерживает различные профили и функции.

Профили Bluetooth

Эти профили доступны для Bluetooth:

Особенность Android-версия
Имя Описание 6,0 7,0 7.1 7.1.2 8,0
САП Профиль доступа к SIM-карте 1.1 1.1 1.1 1.1 1.1
КАРТА Профиль доступа к сообщениям для SMS 1,2 1,2 1,2 1,2 1,2
ОПП Профиль отправки объекта 1.1 1.1 1.1 1.1 1,2
OBEX через L2CAP ОБМЕН ОБЪЕКТАМИ по протоколу управления логическими связями и адаптации Да Да Да Да Да
Аудиошлюз HFP Профиль громкой связи 1,6 1,6 1,7 1,7 1,7
ВСП Профиль гарнитуры 1,2 1,2 1,2 1,2 1,2
A2DP Расширенный профиль распространения аудио 1,2 1,2 1,2 1,2 1,2
АВРКП Профиль удаленного управления аудио/видео 1,3 1,3 1,3 1,3 1,4
СПРЯТАН Профиль устройства с интерфейсом пользователя 1,0 1,0 1,0 1,0 1,0
ПБАП Профиль доступа к телефонной книге 1.1.1 1.1.1 1.1.1 1.1.1 1,2
HDP Профиль устройства здоровья 1,0 1,0 1.1 1.1 1.1
СЭС Профиль последовательного порта 1,2 1,2 1,2 1,2 1,2
ПАН / БНЭП Профиль персональной сети / протокол сетевой инкапсуляции Bluetooth 1,0 1,0 1,0 1,0 1,0
ОКУНАТЬ Профиль идентификатора устройства 1,3 1,3 1,3 1,3 1,3
ХГП 1.0 HID по ГАТТ Да Да Да Да Да
HD-аудио 1 См. «Расширенные аудиокодеки» выше. Нет Нет Нет Нет Да

1 Реализация HD Audio зависит от возможностей устройства, как источника, так и приемника.

Функции Bluetooth с низким энергопотреблением

Эти функции доступны для BLE:

Особенность Android-версия
Имя 6,0 7,0 7.1 7.1.2 8,0
Безопасные соединения BR/EDR 4.1 4.1 4.1 4.1 5,0
LE Конфиденциальность 4.2 4.2 4.2 4.2 5,0
LE безопасные соединения 4.2 4.2 4.2 4.2 5,0
Расширения пакетов данных 4.2 4.2 4.2 4.2 5,0
32-битные UUID Да Да Да Да Да
Двойной режим LE Центральный/периферийный Да Да Да Да Да
Периферийный режим LE Да Да Да Да Да
Требования гиперконвергентной инфраструктуры Google Да Да Да Да Да
LE Каналы, ориентированные на соединение Нет Нет Нет Нет Нет