Через 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.
- Перейдите в « Настройки » > «Подключенные устройства » > «Bluetooth ».
- Нажмите на значок шестеренки рядом с приемником, для которого вы хотите отключить кодеки.
- Снимите флажок 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 Каналы, ориентированные на соединение | Нет | Нет | Нет | Нет | Нет |