Serviços Bluetooth

Por Bluetooth, os dispositivos podem transmitir dados que podem ser usados para serviços interativos, como áudio, mensagens e telefonia. A 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 façam streaming de áudio em dispositivos com Bluetooth dispositivos. Na maioria dos casos de uso de áudio, o dispositivo Android é a origem, e o dispositivo de renderização, como um alto-falante ou fone de ouvido, é o coletor.

Controle de volume absoluto

No Android 6.0 e versões posteriores, a pilha Bluetooth do Android permite definir um volume absoluto, proporcionando aos usuários um controle preciso volume do áudio. O dispositivo de origem envia áudio e volume sem atenuação informações para o coletor. O coletor amplifica o áudio de acordo com às informações de volume, para que os usuários ouçam com precisão o volume de reprodução.

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

O controle de volume absoluto é ativado por padrão. Para desativar valores absolutos controle de volume, os usuários podem acessar Configurações > Sistema > Opções do desenvolvedor e selecione Desativar volume absoluto.

Codecs de áudio avançados

No Android 8.0, os dispositivos que usam a Distribuição de áudio avançada O perfil (A2DP) pode ser compatível com mais codecs de áudio. O Bluetooth oferece suporte à negociação de codecs de áudio para quando os dispositivos se um coletor remoto de áudio. Esta negociação seleciona o melhor codec pelo remetente e pelo coletor para fornecer informações de alta qualidade áudio. Após a seleção, todo o áudio é roteado com codificador e enviado ao coletor.

Implementação

Dispositivos com Android 8.0 compatíveis com A2DP automaticamente obtenham suporte adicional para codecs. Os fabricantes de dispositivos podem precisar para obter licenças separadas e blobs binários para alguns codecs de áudio reservados. Além do SBC, o Android 8.0 oferece suporte aos seguintes codecs:

  • AAC
  • aptX
  • aptX HD
  • LDAC

Os fabricantes de dispositivos podem escolher os codecs dos dispositivos tentar usar primeiro. Defina as prioridades do codec alterando o 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 um codificador para o codec LDAC da Sony, portanto Uma licença ou blob separado da Sony não é necessário para isso. Para integrar o LDAC, registre-se na Sony e siga as Processo de certificação do LDAC.

O site da certificação LDAC tem documentação sobre o LDAC, como manuais de especificação e operação. O site do LDAC também oferece testes de validação e interoperabilidade para dispositivos móveis e tablets. Enviar resultados do teste aprovados para a Sony para concluir o LDAC certificação.

Recursos da interface

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

  1. Acesse Configurações > Dispositivos conectados > Bluetooth.
  2. Toque no ícone de engrenagem ao lado do coletor em que você quer desativar os codecs. pelas quais
  3. Desmarque a caixa de seleção Áudio HD.

Os fabricantes de dispositivos que personalizam as Configurações devem implementar uma que os usuários possam desativar codecs de alta definição.

Mensagens

As mensagens por Bluetooth permitem que os usuários leiam, naveguem e escrevam SMS mensagens de um dispositivo remoto. Esse recurso costuma ser usado conectar um smartphone a um sistema de infoentretenimento no veículo.

Telefonia

Os serviços de telefonia Bluetooth permitem que os usuários façam streaming de chamadas e sincronizem contatos de um telefone para outro dispositivo Bluetooth. Esses recursos são usado com frequência para chamadas por viva-voz ao dirigir.

No Android 8.0, o Bluetooth é compatível com o toque em banda. Quando um smartphone estiver conectado por Bluetooth receber uma chamada, o toque brincar na pia. Ative o toque em banda em Configurações &gt; Sistema > Opções do desenvolvedor por Selecione o botão de alternância Ativar toque em banda.

Recursos de Bluetooth

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

Perfis Bluetooth

Estes perfis estão disponíveis para Bluetooth:

Recurso Versão do Android
Nome Descrição 6.0 7.0 7.1 7.1.2 8.0
SAP Perfil de acesso ao chip 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 (link em inglês) Perfil de push do objeto 1.1 1.1 1.1 1.1 1.2
OBEX sobre L2CAP Troca de objeto sobre adaptação e controle de links lógicos Protocolo Sim Sim Sim Sim Sim
Gateway de áudio HFP Perfil de viva-voz 1.6 1.6 1.7 1.7 1.7
HSP (em inglês) Perfil do fone de ouvido 1.2 1.2 1.2 1.2 1.2
A2DP (link em inglês) Perfil avançado de distribuição de áudio 1.2 1.2 1.2 1.2 1.2
AVRCP (em inglês) Perfil de controle remoto de áudio/vídeo 1.3 1.3 1.3 1.3 1.4
HID (link em inglês) Perfil de dispositivo de interface humana 1.0 1.0 1.0 1.0 1.0
PBAP (em inglês) Perfil de acesso à agenda de contatos 1.1.1 1.1.1 1.1.1 1.1.1 1.2
HDP (link em inglês) Perfil Health Device 1.0 1.0 1.1 1.1 1.1
SPP (link em inglês) Perfil da porta serial 1.2 1.2 1.2 1.2 1.2
PAN / BNEP (em inglês) Perfil de Rede de Área Pessoal / Rede Bluetooth Protocolo de encapsulamento 1.0 1.0 1.0 1.0 1.0
DIP (link em inglês) Perfil do ID do dispositivo 1.3 1.3 1.3 1.3 1.3
HOGP 1.0 (link em inglês) OCULTADO em GATT Sim Sim Sim Sim Sim
Áudio HD1 Consulte "Codecs de áudio avançados" acima de Não Não Não Não Sim

1 A implementação de áudio HD depende do dispositivo na origem e no coletor.

Recursos do Bluetooth de baixa energia

Estes recursos estão disponíveis para BLE:

Recurso 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 do LE 4.2 4.2 4.2 4.2 5.0
Conexões seguras LE 4.2 4.2 4.2 4.2 5.0
Extensões de pacotes de dados (em inglês) 4.2 4.2 4.2 4.2 5.0
UUIDs de 32 bits Sim Sim Sim Sim Sim
LE Central/Periférico de modo duplo Sim Sim Sim Sim Sim
Modo de periférico LE Sim Sim Sim Sim Sim
Requisitos da HCI do Google Sim Sim Sim Sim Sim
Canais orientados para conexão de LE Não Não Não Não Não