Grâce à Bluetooth, les appareils peuvent transmettre des données pouvant être utilisées pour des services interactifs tels que l'audio, la messagerie et la téléphonie. Les profils Bluetooth utilisés pour différents services peuvent être trouvés dans include/hardware/bluetooth.h
.
l'audio
Une connexion Bluetooth permet aux utilisateurs de diffuser de l'audio sur des appareils compatibles Bluetooth. Pour la plupart des cas d'utilisation audio, l'appareil Android est la source et le périphérique de rendu, tel qu'un haut-parleur ou un casque, est le récepteur.
Contrôle absolu du volume
Dans Android 6.0 et versions ultérieures, la pile Bluetooth Android permet à une source de définir un volume absolu, offrant ainsi aux utilisateurs un contrôle précis sur le volume audio. Le périphérique source envoie des informations audio et de volume non atténuées au récepteur. Le récepteur amplifie ensuite l'audio en fonction des informations de volume, afin que les utilisateurs entendent un volume de lecture précis.
L'appareil source peut également enregistrer des notifications de volume. Lorsque des modifications de volume sont effectuées avec des commandes sur le récepteur, celui-ci envoie une notification à la source. Cela permet à la source d'afficher avec précision les informations de volume sur une interface utilisateur.
Le contrôle du volume absolu est activé par défaut. Pour désactiver le contrôle du volume absolu, les utilisateurs peuvent accéder à Paramètres > Système > Options du développeur et sélectionner la bascule pour Désactiver le volume absolu .
Codecs audio avancés
Sous Android 8.0, les appareils qui utilisent le profil de distribution audio avancé (A2DP) peuvent prendre en charge des codecs audio supplémentaires. La pile Bluetooth prend en charge la négociation de codec audio lorsque les appareils se connectent à un récepteur audio distant. Cette négociation sélectionne le meilleur codec pris en charge à la fois par l'expéditeur et le récepteur pour fournir un audio de haute qualité. Après la sélection, tout l'audio est acheminé via l'encodeur sélectionné, puis envoyé vers le récepteur.
Mise en œuvre
Les appareils exécutant Android 8.0 prenant en charge A2DP bénéficient automatiquement de la prise en charge du codec supplémentaire. Les fabricants d’appareils devront peut-être obtenir des licences distinctes et des blobs binaires pour certains codecs audio propriétaires. En plus de SBC, Android 8.0 prend en charge les codecs suivants :
- CAA
- aptX
- aptXHD
- LDAC
Les fabricants d'appareils peuvent choisir les codecs que leurs appareils tentent d'utiliser en premier. Définissez les priorités du codec en modifiant les valeurs suivantes dans 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>
Certification LDAC
Le projet Android Open Source inclut un encodeur pour le codec LDAC de Sony, donc une licence ou un blob distinct de Sony n'est pas nécessaire pour cela. Pour intégrer le codec LDAC dans votre appareil, inscrivez-vous auprès de Sony et suivez le processus de certification LDAC .
Le site Web de certification LDAC contient de la documentation sur LDAC, telle que des manuels de spécifications et d'utilisation. Le site LDAC propose également des tests de validation et d'interopérabilité pour les appareils mobiles et tablettes. Envoyez les résultats des tests de réussite à Sony pour compléter la certification LDAC.
Fonctionnalités de l'interface utilisateur
Outre la prise en charge supplémentaire des codecs, Android 8.0 fournit un paramètre destiné à l'utilisateur pour désactiver les codecs audio Bluetooth haute définition (HD).
- Accédez à Paramètres > Appareils connectés > Bluetooth .
- Appuyez sur l'icône d'engrenage à côté du récepteur pour lequel vous souhaitez désactiver les codecs.
- Décochez la case HD Audio .
Les fabricants d'appareils qui personnalisent les paramètres doivent mettre en œuvre un moyen permettant aux utilisateurs de désactiver les codecs HD.
Messagerie
La messagerie via Bluetooth permet aux utilisateurs de lire, parcourir et rédiger des messages SMS à partir d'un appareil distant. Cette fonctionnalité est souvent utilisée lors de la connexion d'un téléphone à un système d'infodivertissement embarqué.
Téléphonie
Les services de téléphonie Bluetooth permettent aux utilisateurs de diffuser des appels et de synchroniser les contacts d'un téléphone vers un autre appareil Bluetooth. Ces fonctionnalités sont souvent utilisées pour les appels mains libres en conduisant.
Sous Android 8.0, Bluetooth prend en charge la sonnerie intra-bande. Lorsqu'un téléphone connecté via Bluetooth reçoit un appel entrant, la sonnerie est diffusée sur l'évier. Activez la sonnerie intra-bande dans Paramètres > Système > Options du développeur en sélectionnant le bouton Activer la sonnerie intra-bande .
Fonctionnalités Bluetooth
Pour implémenter les services Bluetooth, la pile Bluetooth prend en charge une variété de profils et de fonctionnalités.
Profils Bluetooth
Ces profils sont disponibles pour Bluetooth :
Fonctionnalité | Version Android | |||||
---|---|---|---|---|---|---|
Nom | Description | 6.0 | 7.0 | 7.1 | 7.1.2 | 8.0 |
SÈVE | Profil d'accès SIM | 1.1 | 1.1 | 1.1 | 1.1 | 1.1 |
CARTE | Profil d'accès aux messages pour SMS | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
PPO | Profil de poussée d'objet | 1.1 | 1.1 | 1.1 | 1.1 | 1.2 |
OBEX sur L2CAP | Échange d'objets via un protocole de contrôle de liaison logique et d'adaptation | Oui | Oui | Oui | Oui | Oui |
Passerelle audio HFP | Profil mains libres | 1.6 | 1.6 | 1.7 | 1.7 | 1.7 |
PSH | Profil de casque | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
A2DP | Profil de distribution audio avancé | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
AVRCP | Profil de télécommande audio/vidéo | 1.3 | 1.3 | 1.3 | 1.3 | 1.4 |
CACHÉ | Profil de périphérique d'interface humaine | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
PBAP | Profil d'accès au répertoire téléphonique | 1.1.1 | 1.1.1 | 1.1.1 | 1.1.1 | 1.2 |
HDP | Profil d'appareil de santé | 1.0 | 1.0 | 1.1 | 1.1 | 1.1 |
PPS | Profil de port série | 1.2 | 1.2 | 1.2 | 1.2 | 1.2 |
PAN / BNEP | Profil de réseau personnel / Protocole d'encapsulation de réseau Bluetooth | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 |
TREMPER | Profil d'identification de l'appareil | 1.3 | 1.3 | 1.3 | 1.3 | 1.3 |
HOGP1.0 | HID sur le GATT | Oui | Oui | Oui | Oui | Oui |
Audio HD1 | Voir « Codecs audio avancés » ci-dessus | Non | Non | Non | Non | Oui |
1 La mise en œuvre de l'audio HD dépend des capacités de l'appareil, à la fois au niveau de la source et du récepteur.
Fonctionnalités Bluetooth basse consommation
Ces fonctionnalités sont disponibles pour BLE :
Fonctionnalité | Version Android | ||||
---|---|---|---|---|---|
Nom | 6.0 | 7.0 | 7.1 | 7.1.2 | 8.0 |
Connexions sécurisées BR/EDR | 4.1 | 4.1 | 4.1 | 4.1 | 5.0 |
LE Confidentialité | 4.2 | 4.2 | 4.2 | 4.2 | 5.0 |
Connexions sécurisées LE | 4.2 | 4.2 | 4.2 | 4.2 | 5.0 |
Extensions de paquets de données | 4.2 | 4.2 | 4.2 | 4.2 | 5.0 |
UUID 32 bits | Oui | Oui | Oui | Oui | Oui |
Double mode LE central/périphérique | Oui | Oui | Oui | Oui | Oui |
Mode périphérique LE | Oui | Oui | Oui | Oui | Oui |
Exigences Google HCI | Oui | Oui | Oui | Oui | Oui |
Canaux orientés connexion LE | Non | Non | Non | Non | Non |