Pour simplifier le processus d'intégration d'applications mobiles sur les appareils Android Automotive OS, certaines voitures sont équipées d'un mode de compatibilité qui résout les problèmes courants rencontrés lors de l'intégration d'applications mobiles existantes dans les voitures.
Bien que ce mode de compatibilité soit utilisé par le programme Applications mobiles adaptées aux voitures, les applications qui n'en font pas partie peuvent également s'exécuter dans ce mode.
Comprendre le mode de compatibilité
Le mode de compatibilité Android Automotive OS est une fonctionnalité logicielle disponible sur certains véhicules pour améliorer l'expérience utilisateur des applications conçues pour les appareils mobiles lorsqu'elles sont exécutées sur Android Automotive OS.
Navigation vers l'arrière
Contrairement à d'autres facteurs de forme, les appareils Android Automotive OS ne sont pas tenus de disposer d'une affordance de retour matérielle ou logicielle. Le mode de compatibilité résout ce problème en exigeant une affordance de retour fournie par le système, qu'il s'agisse d'un bouton matériel, d'un bouton logiciel, d'un geste ou d'un autre élément. Cela évite aux applications de devoir assurer la navigation uniquement via leurs propres éléments d'interface utilisateur.
Affichage de la zone de sécurité
Dans les voitures, des éléments logiciels et matériels tels que les barres système et les encoches d'écran peuvent contredire les hypothèses faites par les applications développées principalement pour les appareils mobiles. Le mode de compatibilité résout ce problème en veillant à ce que les applications soient affichées dans une zone sécurisée.
Mise à l'échelle de la densité
Étant donné que la distance d'interaction dans les voitures est plus grande que pour les autres appareils à grand écran, les cibles tactiles et les tailles de police sont souvent plus petites que recommandées lorsque l'application est exécutée dans une voiture. Le mode de compatibilité permet aux OEM de spécifier un facteur de scaling PPP utilisé lors de l'affichage des applications.
Cycle de vie d'une activité
Comme décrit dans la section Créer des applications à utiliser à l'arrêt pour Android Automotive OS, le système d'exploitation bloque automatiquement les activités de votre application lorsque la voiture passe en mode Voiture afin d'éviter toute distraction pour le conducteur. Sur les appareils avec mode de compatibilité, l'UI bloquante de l'OEM ne doit pas être transparente. Votre application n'est donc plus visible et passe à l'état de cycle de vie Arrêtée lorsqu'elle est bloquée.
Configurer le mode de compatibilité
Par défaut, les activités de votre application sont exécutées en mode de compatibilité lorsque l'appareil le prend en charge. Les activités ne s'exécutent pas en mode de compatibilité dans les cas suivants:
- Lorsqu'un élément
<uses-feature>
pour la fonctionnalitéandroid.hardware.type.automotive
est présent dans le fichier manifeste:
<application ...>
...
<uses-feature android:name="android.hardware.type.automotive" ...>
...
</application>
- Si un élément de fichier manifeste
<activity>
contient l'élément<meta-data>
suivant:
<meta-data android:name="distractionOptimized" android:value="true">
Si l'une de ces conditions s'applique à votre application, mais que vous préférez que vos activités s'exécutent en mode de compatibilité d'affichage, vous pouvez ajouter l'élément <meta-data>
suivant dans le fichier manifeste de votre application:
<application ...>
...
<meta-data android:name="android.software.car.display_compatibility" android:value="true"/>
...
</application>
Tester votre application en mode compatibilité
Pour tester votre application en mode de compatibilité, vous pouvez utiliser les images système génériques avec le mode de compatibilité.
Déterminer la compatibilité de l'appareil
Les appareils compatibles avec le mode de compatibilité d'Android Automotive OS doivent déclarer la fonctionnalité système android.software.car.display_compatibility
. Pour savoir quels appareils sont compatibles avec cette fonctionnalité, vous pouvez utiliser le catalogue d'appareils de la Play Console.