À chaque version d'Android, les modifications apportées aux API et au comportement ont un impact sur le fonctionnement des applications sur Android Auto et Android Automotive OS. Cette page décrit en détail bon nombre de ces impacts et fournit des informations sur la façon de mettre à jour votre application pour qu'elle soit compatible avec les nouvelles versions d'Android.
Android 16
- Android Auto utilise des remplacements de propriétaire d'appareil virtuel pour ignorer les restrictions d'orientation, de format et de redimensionnement lors de l'exécution d'applications en mode stationnement.
- Si votre application utilise les mises à jour Android 16 pour des intents plus sécurisés, vous devrez peut-être spécifier l'attribut
android:intentMatchingFlags
de l'élément<service>
pour votreCarAppService
en tant queallowNullAction
afin de permettre à Android Auto et Android Automotive OS de se connecter à votre service.
Android 15
- En raison des modifications apportées aux encarts de fenêtre pour les applications ciblant Android 15 ou version ultérieure, vous devez tester les applications distribuées sur Android Automotive OS pour vérifier que les activités implémentées par votre application s'affichent comme prévu. Pour en savoir plus sur les considérations propres à Android Automotive OS, consultez Utiliser des encarts de fenêtre et des encoches.
Android 14
- Étant donné que les applications ciblant Android 14 ou version ultérieure doivent spécifier des types de services de premier plan, vérifiez que vous spécifiez un type de service de premier plan pour tous les services de premier plan de votre application, tels que ceux pour la navigation et la lecture multimédia.
- En raison de l'exigence selon laquelle les broadcast receivers enregistrés lors de l'exécution doivent spécifier le comportement d'exportation pour les applications ciblant Android 14 ou version ultérieure, les applications qui utilisent l'API
CarConnection
doivent passer à la versionandroidx.car.app:app:1.3.0-beta01
ou ultérieure. Consultez l'API Connections. - En raison des modifications apportées à Android Auto lorsqu'il s'exécute sur des appareils Android 14 ou version ultérieure, le lancement d'activités sur l'écran du téléphone à partir de l'application Android Auto nécessite de fournir un
ActivityOptions
avec l'ID d'affichage défini sur celui de l'écran du téléphone (DEFAULT_DISPLAY
) lors de l'appel destartActivity()
.- Les applications qui utilisent la méthode
CarContext.requestPermissions()
doivent passer à la versionandroidx.car.app:app:1.7.0-alpha01
ou ultérieure, qui inclut ce correctif.
- Les applications qui utilisent la méthode
Android 13
- Pour les applications conçues à l'aide de la bibliothèque d'applications Android for Cars, le paramètre régional de l'
Configuration
fourni parCarContext
reflète les préférences linguistiques par application pour l'application hôte, et non celles de votre application.
Android 12
- Sur les appareils équipés d'Android 12 ou version ultérieure, Android Auto ne modifie pas le mode UI de l'appareil lorsqu'il est en cours d'exécution. Consultez Comment détecter si Android Auto est en cours d'exécution ?.
- En raison des exigences concernant l'exportation plus sécurisée des composants pour les applications ciblant Android 12 ou version ultérieure, vous devez déclarer explicitement l'attribut
android:exported
sur l'élément<service>
pour les servicesMediaBrowserService
etCarAppService
. - En raison des exigences de mutabilité des intents en attente pour les applications ciblant Android 12 ou version ultérieure, vous devez spécifier explicitement la mutabilité de tout intent en attente créé par votre application. Par exemple, cela inclut les intents en attente que les applications de messagerie utilisent pour gérer la réponse aux messages ou leur marquage comme lus.