Servicios Bluetooth

A través de Bluetooth, los dispositivos pueden transmitir datos que pueden usarse para servicios interactivos como audio, mensajería y telefonía. Los perfiles de Bluetooth utilizados para diferentes servicios se pueden encontrar en include/hardware/bluetooth.h .

Audio

Una conexión Bluetooth permite a los usuarios transmitir audio en dispositivos habilitados para Bluetooth. Para la mayoría de los casos de uso de audio, el dispositivo Android es la fuente y el dispositivo de reproducción, como un altavoz o unos auriculares, es el receptor.

Control absoluto de volumen

En Android 6.0 y versiones posteriores, la pila Bluetooth de Android permite que una fuente establezca un volumen absoluto, lo que brinda a los usuarios un control preciso sobre el volumen del audio. El dispositivo fuente envía información de volumen y audio no atenuado al receptor. Luego, el disipador amplifica el audio de acuerdo con la información del volumen, para que los usuarios escuchen el volumen de reproducción preciso.

El dispositivo fuente también puede registrar notificaciones de volumen. Cuando los cambios de volumen se realizan con los controles del receptor, el receptor envía una notificación a la fuente. Esto permite que la fuente muestre con precisión información de volumen en una interfaz de usuario.

El control de volumen absoluto está activado de forma predeterminada. Para deshabilitar el control de volumen absoluto, los usuarios pueden ir a Configuración > Sistema > Opciones de desarrollador y seleccionar la opción Desactivar volumen absoluto .

Códecs de audio avanzados

En Android 8.0, los dispositivos que utilizan el perfil de distribución de audio avanzado (A2DP) pueden admitir códecs de audio adicionales. La pila Bluetooth admite la negociación de códecs de audio para cuando los dispositivos se conectan a un receptor de audio remoto. Esta negociación selecciona el mejor códec admitido tanto por el remitente como por el receptor para proporcionar audio de alta calidad. Después de la selección, todo el audio se enruta a través del codificador seleccionado y luego se envía al receptor.

Implementación

Los dispositivos que ejecutan Android 8.0 y admiten A2DP obtienen automáticamente compatibilidad con códec adicional. Es posible que los fabricantes de dispositivos necesiten obtener licencias independientes y blobs binarios para algunos códecs de audio propietarios. Además de SBC, Android 8.0 admite los siguientes códecs:

  • CAA
  • aptX
  • aptXHD
  • LDAC

Los fabricantes de dispositivos pueden elegir qué códecs intentan utilizar primero sus dispositivos. Establezca las prioridades del códec cambiando los siguientes valores en 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>
      

Certificación LDAC

El Proyecto de código abierto de Android incluye un codificador para el códec LDAC de Sony, por lo que no se necesita una licencia o blob por separado de Sony. Para integrar el códec LDAC en su dispositivo, regístrese en Sony y siga el proceso de certificación LDAC .

El sitio web de certificación LDAC tiene documentación sobre LDAC, como manuales de operación y especificaciones. El sitio LDAC también proporciona pruebas de validación e interoperabilidad para dispositivos móviles y tabletas. Envíe los resultados de las pruebas a Sony para completar la certificación LDAC.

Funciones de la interfaz de usuario

Además de la compatibilidad con códecs adicionales, Android 8.0 proporciona una configuración orientada al usuario para desactivar los códecs de audio Bluetooth de alta definición (HD).

  1. Navegue a Configuración > Dispositivos conectados > Bluetooth .
  2. Toque el ícono de ajustes al lado del receptor para el que desea desactivar los códecs.
  3. Desmarque la casilla de verificación Audio HD .

Los fabricantes de dispositivos que personalizan la configuración deberían implementar una forma para que los usuarios deshabiliten los códecs HD.

Mensajería

La mensajería a través de Bluetooth permite a los usuarios leer, explorar y redactar mensajes SMS desde un dispositivo remoto. Esta capacidad se utiliza a menudo al conectar un teléfono a un sistema de información y entretenimiento en el vehículo.

Telefonía

Los servicios de telefonía Bluetooth permiten a los usuarios transmitir llamadas y sincronizar contactos desde un teléfono a otro dispositivo Bluetooth. Estas funciones se utilizan a menudo para llamadas con manos libres mientras se conduce.

En Android 8.0, Bluetooth admite tonos de llamada dentro de banda. Cuando un teléfono conectado a través de Bluetooth recibe una llamada entrante, el tono de llamada se reproducirá en el fregadero. Habilite el tono de llamada dentro de banda en Configuración > Sistema > Opciones de desarrollador seleccionando el interruptor para Habilitar timbre dentro de banda .

Funciones de Bluetooth

Para implementar los servicios Bluetooth, la pila Bluetooth admite una variedad de perfiles y funciones.

Perfiles Bluetooth

Estos perfiles están disponibles para Bluetooth:

Característica versión de Android
Nombre Descripción 6.0 7.0 7.1 7.1.2 8.0
SAVIA Perfil de acceso a SIM 1.1 1.1 1.1 1.1 1.1
MAPA Perfil de acceso a mensajes para SMS 1.2 1.2 1.2 1.2 1.2
OPP Perfil de inserción de objetos 1.1 1.1 1.1 1.1 1.2
OBEX sobre L2CAP Intercambio de objetos sobre protocolo de adaptación y control de enlace lógico
Puerta de enlace de audio HFP Perfil manos libres 1.6 1.6 1.7 1.7 1.7
HSP Perfil de auriculares 1.2 1.2 1.2 1.2 1.2
A2DP Perfil de distribución de audio avanzado 1.2 1.2 1.2 1.2 1.2
AVRCP Perfil de control remoto de audio/vídeo 1.3 1.3 1.3 1.3 1.4
ESCONDIDO Perfil del dispositivo de interfaz humana 1.0 1.0 1.0 1.0 1.0
PBAP Perfil de acceso a la agenda telefónica 1.1.1 1.1.1 1.1.1 1.1.1 1.2
HDP Perfil del dispositivo de salud 1.0 1.0 1.1 1.1 1.1
SPP Perfil de puerto serie 1.2 1.2 1.2 1.2 1.2
PAN/BNEP Perfil de red de área personal/Protocolo de encapsulación de red Bluetooth 1.0 1.0 1.0 1.0 1.0
ADEREZO Perfil de identificación del dispositivo 1.3 1.3 1.3 1.3 1.3
HOGP 1.0 HID sobre el GATT
Audio de alta definición 1 Consulte "Códecs de audio avanzados" más arriba No No No No

1 La implementación de HD Audio depende de las capacidades del dispositivo, tanto de la fuente como del receptor.

Funciones de Bluetooth de bajo consumo

Estas funciones están disponibles para BLE:

Característica versión de Android
Nombre 6.0 7.0 7.1 7.1.2 8.0
Conexiones seguras BR/EDR 4.1 4.1 4.1 4.1 5.0
LE Privacidad 4.2 4.2 4.2 4.2 5.0
Conexiones seguras LE 4.2 4.2 4.2 4.2 5.0
Extensiones de paquetes de datos 4.2 4.2 4.2 4.2 5.0
UUID de 32 bits
Modo dual LE central/periférico
Modo periférico LE
Requisitos de HCI de Google
Canales orientados a la conexión LE No No No No No