По Bluetooth устройства могут передавать данные, которые могут использоваться для интерактивных сервисов, таких как аудио, обмен сообщениями и телефония. Профили Bluetooth, используемые для различных сервисов, можно найти в include/hardware/bluetooth.h .
Аудио
Bluetooth-соединение позволяет пользователям передавать аудиопоток на устройства с поддержкой Bluetooth. В большинстве случаев источником звука является устройство на базе Android, а приемником — устройство, воспроизводящее аудио, например, динамик или гарнитура.
Абсолютный контроль громкости
В Android 6.0 и выше стек Bluetooth позволяет источнику устанавливать абсолютную громкость, обеспечивая пользователям точный контроль над громкостью звука. Источник передает на приемник неискаженную информацию о звуке и громкости. Затем приемник усиливает звук в соответствии с полученной информацией о громкости, поэтому пользователи слышат точную громкость воспроизведения.
Исходное устройство также может регистрировать уведомления об изменении громкости. Когда громкость изменяется с помощью регуляторов на приемнике, приемник отправляет уведомление источнику. Это позволяет источнику точно отображать информацию о громкости в пользовательском интерфейсе.
Абсолютное управление громкостью включено по умолчанию. Пользователь может отключить абсолютное управление громкостью в разделе «Настройки» > «Система» > «Параметры разработчика» , переведя переключатель « Отключить абсолютное управление громкостью» в положение «Вкл.».
Расширенные аудиокодеки
В Android 8.0 устройства, использующие профиль расширенного распределения аудио (A2DP), могут поддерживать дополнительные аудиокодеки. Стек Bluetooth поддерживает согласование аудиокодеков при подключении устройств к удаленному аудиоприемнику. В ходе этого согласования выбирается наилучший кодек, поддерживаемый как отправителем, так и приемником, для обеспечения высокого качества звука. После выбора устройство направляет весь звук через выбранный кодировщик, а затем отправляет его на приемник.
Выполнение
Устройства под управлением Android 8.0, поддерживающие A2DP, автоматически получают дополнительную поддержку кодеков. Производителям устройств может потребоваться приобрести отдельные лицензии и бинарные файлы для некоторых проприетарных аудиокодеков. Помимо SBC, Android 8.0 поддерживает следующие кодеки:
- ААК
- aptX
- aptX HD
- ЛДАК
Производители устройств могут выбирать, какие кодеки их устройства будут пытаться использовать в первую очередь. Задайте приоритеты кодеков, изменив следующие значения в файле 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 Open Source Project (AOSP) входит кодировщик для кодека LDAC от Sony, поэтому отдельная лицензия или файл от Sony для него не требуется. Чтобы интегрировать кодек LDAC в ваше устройство, зарегистрируйтесь в Sony и пройдите процесс сертификации LDAC .
На сайте сертификации LDAC размещена документация по LDAC, такая как технические характеристики и руководства по эксплуатации. На сайте LDAC также представлены тесты на проверку и совместимость мобильных устройств и планшетов. Для завершения сертификации LDAC необходимо отправить результаты успешных тестов в компанию Sony.
функции пользовательского интерфейса
Помимо дополнительной поддержки кодеков, 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 |
| SAP | Профиль доступа к 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 |
| HSP | Профиль гарнитуры | 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 |
| HID | Профиль устройства пользовательского интерфейса | 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 |
| HOGP 1.0 | HID через GATT | Да | Да | Да | Да | Да |
| HD-аудио | См. раздел «Расширенные аудиокодеки» . Реализация зависит от возможностей устройства, как источника, так и приемника. | Нет | Нет | Нет | Нет | Да |
Функции Bluetooth Low Energy
Для 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 к HCI | Да | Да | Да | Да | Да |
| Каналы LE, ориентированные на установление соединения | Нет | Нет | Нет | Нет | Нет |