Serviços Bluetooth

Por Bluetooth, os dispositivos podem transmitir dados que podem ser usados ​​para serviços interativos, como áudio, mensagens e telefonia. Os perfis Bluetooth usados ​​para diferentes serviços podem ser encontrados em include/hardware/bluetooth.h .

Áudio

Uma conexão Bluetooth permite que os usuários transmitam áudio em dispositivos habilitados para Bluetooth. Para a maioria dos casos de uso de áudio, o dispositivo Android é a fonte e o dispositivo de renderização, como um alto-falante ou um fone de ouvido, é o coletor.

Controle de volume absoluto

No Android 6.0 e posterior, a pilha Bluetooth do Android permite que uma fonte defina um volume absoluto, dando aos usuários controle preciso sobre o volume do áudio. O dispositivo de origem envia informações de áudio e volume não atenuadas para o coletor. O coletor amplifica o áudio de acordo com as informações de volume, para que os usuários ouçam o volume de reprodução preciso.

O dispositivo de origem também pode registrar notificações de volume. Quando as alterações de volume são feitas com controles no coletor, o coletor envia uma notificação à origem. Isso permite que a fonte exiba com precisão as informações de volume em uma interface de usuário.

O controle de volume absoluto está ativado por padrão. Para desabilitar o controle de volume absoluto, os usuários podem acessar Configurações > Sistema > Opções do desenvolvedor e selecionar a opção Desativar volume absoluto .

Codecs de áudio avançados

No Android 8.0, os dispositivos que usam o Advanced Audio Distribution Profile (A2DP) podem oferecer suporte a codecs de áudio adicionais. A pilha Bluetooth oferece suporte à negociação de codec de áudio para quando os dispositivos se conectam a um coletor de áudio remoto. Essa negociação seleciona o melhor codec suportado pelo remetente e pelo coletor para fornecer áudio de alta qualidade. Após a seleção, todo o áudio é roteado pelo codificador selecionado e enviado para o coletor.

Implementação

Os dispositivos que executam o Android 8.0 que suportam A2DP obtêm automaticamente o suporte de codec adicional. Os fabricantes de dispositivos podem precisar obter licenças separadas e blobs binários para alguns codecs de áudio proprietários. Além do SBC, o Android 8.0 é compatível com os seguintes codecs:

  • AAC
  • aptX
  • aptX HD
  • LDAC

Os fabricantes de dispositivos podem escolher quais codecs seus dispositivos tentam usar primeiro. Defina as prioridades do codec alterando os seguintes valores em 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>
      

Certificação LDAC

O Android Open Source Project inclui o codec LDAC da Sony, portanto, uma licença separada ou blob não é necessária para isso. Para integrar o codec LDAC em seu dispositivo, registre-se na Sony e siga o processo de certificação LDAC .

O site de certificação do LDAC possui documentação sobre o LDAC, como manuais de especificação e operação. O site do LDAC também fornece testes de validação e interoperabilidade para dispositivos móveis e tablets. Envie os resultados dos testes aprovados para a Sony para concluir a certificação LDAC.

Recursos da interface do usuário

Juntamente com o suporte a codecs adicionais, o Android 8.0 fornece uma configuração voltada para o usuário para desativar codecs de áudio Bluetooth de alta definição (HD).

  1. Navegue até Configurações > Dispositivos conectados > Bluetooth .
  2. Toque no ícone de engrenagem ao lado da pia para a qual você deseja desativar os codecs.
  3. Desmarque a caixa de seleção Áudio HD .

Os fabricantes de dispositivos que personalizam as configurações devem implementar uma maneira de os usuários desativarem os codecs HD.

Mensagens

As mensagens via Bluetooth permitem que os usuários leiam, naveguem e componham mensagens SMS de um dispositivo remoto. Esse recurso é frequentemente usado ao conectar um telefone a um sistema de infoentretenimento no veículo.

Telefonia

Os serviços de telefonia Bluetooth permitem que os usuários transmitam chamadas e sincronizem contatos de um telefone para outro dispositivo Bluetooth. Esses recursos são frequentemente usados ​​para chamadas de viva-voz ao dirigir.

No Android 8.0, o Bluetooth é compatível com toques em banda. Quando um telefone conectado via Bluetooth recebe uma chamada, o toque será reproduzido na pia. Habilite o toque em banda em Configurações > Sistema > Opções do desenvolvedor selecionando a alternância para Ativar toque em banda .

Recursos Bluetooth

Para implementar os serviços Bluetooth, a pilha Bluetooth suporta uma variedade de perfis e recursos.

Perfis de Bluetooth

Estes perfis estão disponíveis para Bluetooth:

Característica Versão do Android
Nome Descrição 6,0 7,0 7.1 7.1.2 8,0
SEIVA Perfil de acesso SIM 1.1 1.1 1.1 1.1 1.1
MAPA Perfil de acesso a mensagens para SMS 1.2 1.2 1.2 1.2 1.2
OPP Perfil de envio de objeto 1.1 1.1 1.1 1.1 1.2
OBEX sobre L2CAP OBject EXchange sobre Controle de Link Lógico e Protocolo de Adaptação Sim Sim Sim Sim Sim
Gateway de áudio HFP Perfil mãos-livres 1,6 1,6 1,7 1,7 1,7
HSP Perfil do fone de ouvido 1.2 1.2 1.2 1.2 1.2
A2DP Perfil de distribuição de áudio avançado 1.2 1.2 1.2 1.2 1.2
AVRCP Perfil de controle remoto de áudio/vídeo 1.3 1.3 1.3 1.3 1,4
ESCONDIDO Perfil do dispositivo de interface humana 1,0 1,0 1,0 1,0 1,0
PBAP Perfil de acesso à lista telefônica 1.1.1 1.1.1 1.1.1 1.1.1 1.2
HDP Perfil do dispositivo de integridade 1,0 1,0 1.1 1.1 1.1
SPP Perfil da porta serial 1.2 1.2 1.2 1.2 1.2
PAN/BNEP Perfil de Rede de Área Pessoal / Protocolo de Encapsulamento de Rede Bluetooth 1,0 1,0 1,0 1,0 1,0
MERGULHAR Perfil de ID do dispositivo 1.3 1.3 1.3 1.3 1.3
HOGP 1.0 HID sobre GATT Sim Sim Sim Sim Sim
Áudio HD 1 Consulte "Codecs de áudio avançados" acima Não Não Não Não Sim

1 A implementação de HD Audio depende dos recursos do dispositivo, tanto na fonte quanto no coletor.

Recursos Bluetooth de baixa energia

Esses recursos estão disponíveis para BLE:

Característica Versão do Android
Nome 6,0 7,0 7.1 7.1.2 8,0
Conexões seguras BR/EDR 4.1 4.1 4.1 4.1 5,0
Privacidade LE 4.2 4.2 4.2 4.2 5,0
LE conexões seguras 4.2 4.2 4.2 4.2 5,0
Extensões de pacote de dados 4.2 4.2 4.2 4.2 5,0
UUIDs de 32 bits Sim Sim Sim Sim Sim
Modo Dual LE Central/Periférico Sim Sim Sim Sim Sim
Modo periférico LE Sim Sim Sim Sim Sim
Requisitos do Google HCI Sim Sim Sim Sim Sim
Canais Orientados à Conexão LE Não Não Não Não Não