Car App
| Dernière mise à jour | Version stable | Version finale | Version bêta | Version alpha |
|---|---|---|---|---|
| 16 juillet 2025 | 1.7.0 | - | - | 1.8.0-alpha02 |
Déclarer des dépendances
Pour ajouter une dépendance sur la bibliothèque Car App, vous devez ajouter le dépôt Maven de Google à votre projet. Référez-vous à la section Dépôt Maven de Google pour en savoir plus.
Ajoutez les dépendances correspondant aux artefacts dont vous avez besoin dans le fichier build.gradle de votre application ou de votre module :
Groovy
dependencies { implementation "androidx.car.app:app:1.7.0" // For Android Auto specific functionality implementation "androidx.car.app:app-projected:1.7.0" // For Android Automotive specific functionality implementation "androidx.car.app:app-automotive:1.7.0" // For testing testImplementation "androidx.car.app:app-testing:1.7.0" }
Kotlin
dependencies { implementation("androidx.car.app:app:1.7.0") // For Android Auto specific functionality implementation("androidx.car.app:app-projected:1.7.0") // For Android Automotive specific functionality implementation("androidx.car.app:app-automotive:1.7.0") // For testing testImplementation("androidx.car.app:app-testing:1.7.0") }
Pour en savoir plus sur les dépendances, consultez Ajouter des dépendances de compilation.
Commentaires
Vos commentaires nous aident à améliorer Jetpack. N'hésitez pas à nous contacter si vous découvrez de nouveaux problèmes ou si vous avez des idées pour améliorer cette bibliothèque. Veuillez consulter les problèmes existants de cette bibliothèque avant d'en signaler un nouveau. Vous pouvez ajouter votre vote à un problème existant en cliquant sur le bouton en forme d'étoile.
Pour en savoir plus, consultez la documentation sur l'outil Issue Tracker.
Version 1.8
Version 1.8.0-alpha02
18 juin 2025
Publication d'androidx.car.app:app-*:1.8.0-alpha02. La version 1.8.0-alpha02 contient ces commits.
Nouvelles fonctionnalités
- Ajout de la prise en charge de
Action.MEDIA_PLAYBACK, qui affiche un indicateur en fonction de l'état de la lecture du contenu multimédia. - Ajout de la compatibilité pour contrôler la position de défilement d'un utilisateur lors de l'actualisation de
SectionedItemTemplate.
Modifications apportées à l'API
- Ajoutez la prise en charge de l'enregistrement de la position de défilement d'un utilisateur dans
SectionedItemTemplateentre les actualisations. (Ia4c51) - Mise à jour de l'action
MEDIA_PLAYBACKpour l'activer pour l'action de fin de ligne (I05cc4) - Ajout d'un type d'action (I6cc5a)
- Ajoutez
CarAppExtender#addAction(Action)pour que tout type d'action puisse être ajouté àCarAppExtender. (Idc4d7) SectionedItemTemplateest désormais accessible pour l'API 8 et les versions ultérieures. (I9a079)
Version 1.8.0-alpha01
20 mai 2025
Publication d'androidx.car.app:app-*:1.8.0-alpha01. La version 1.8.0-alpha01 contient ces commits.
Nouvelles fonctionnalités
Toutes les fonctionnalités ne sont temporairement disponibles que sur Android Auto. Les mêmes API seront utilisées dans AAOS.
- Ajout de la catégorie "Contenus multimédias" pour créer une application personnalisée, en remplacement de celles basées sur
MediaBrowse - Ajout d'un modèle de lecture qui permet de contrôler les actions en haut de l'écran de lecture multimédia (uniquement disponible pour les applications multimédias)
- Ajout de la prise en charge complète du modèle d'élément sectionné sur Android Auto, qui permet de combiner des sous-sections composées de listes/grilles.
- Ajout de la taille "Très grand" pour les éléments de grille.
Modifications apportées à l'API
- Ajout d'une option de taille supplémentaire pour les éléments de grille (I35b58)
- Ajout de la catégorie et de l'autorisation pour les applications multimédias à la bibliothèque d'applications pour voitures (I8e100)
- Ajout d'une nouvelle API permettant aux applications de détecter si la catégorie de contenu multimédia
CarAppLibraryest acceptée (Ic4b08) OnItemVisibilityChangeListenera été ajouté à la section. (I2c2fd)- Ajout de
Mileage#getOdometerKilometerset arrêt deMileage#getOdometerMeters(Ic91af)
Correction de bugs
- Correction d'une faute de frappe dans le Javadoc de
CarIcon.setTint(Iabd72) - Mise à jour de la documentation
Row.Builder#setNumericDecorationpour indiquer que 1 action + décoration numérique n'est pas pris en charge, mais que 0 ou 2 actions + décoration numérique le sont. (Ic0b08) - Ajout d'un champ pour la couleur d'arrière-plan de l'icône du badge pour les éléments de la grille. (I2b6ae)
Version 1.7
Version 1.7.0
16 juillet 2025
Publication d'androidx.car.app:app-*:1.7.0. La version 1.7.0 contient ces commits.
- Il s'agit de la première version stable qui inclut le correctif pour CVE-2024-10382 corrigé dans la version bêta 03. Si vous utilisez une version antérieure à la version 1.7-beta03, veuillez la mettre à jour.
Version 1.7.0-rc01
15 janvier 2025
Publication d'androidx.car.app:app-*:1.7.0-rc01 sans modification notable par rapport à la version bêta 03. La version 1.7.0-rc01 contient ces commits.
- Il s'agit de la première version candidate qui inclut le correctif pour CVE-2024-10382 corrigé dans la version bêta 03. Si vous utilisez une version antérieure à la version 1.7-beta03, veuillez la mettre à jour.
Version 1.7.0-beta03
13 novembre 2024
Correction d'une faille de sécurité et d'autres bugs généraux. Si vous utilisez une version antérieure, veuillez passer à cette version.
Publication d'androidx.car.app:app-*:1.7.0-beta03. La version 1.7.0-beta03 contient ces commits.
Modifications apportées à l'API
- Mettez à jour le code de sérialisation / désérialisation CAL pour qu'il ne gère que les objets sur lesquels l'annotation
@CarProtocolest déclarée. (Ic730e) CarAppExtenderpeut désormais être utilisé pour étendre le frameworkNotification.Builderau lieu deNotificationCompat.Builderuniquement. (Id3ad7)- Ajoutez
KEY_EXCLUDE_MEDIA_ITEM_FROM_MIXED_APP_LIST. (I201f9) - Abandonnez le constructeur Builder vide sur
ConversationItemet remplacez-le par un constructeur qui prend les paramètres requis. Ajoute également une vérification pour se prémunir contre les messages nuls. (Ic8221)
Correction de bugs
- Assurez-vous que la carte
PlaceListutilise un titre d'en-tête de type chaîne (texte uniquement). (Ic992f) - Cette bibliothèque utilise désormais les annotations de nullité JSpecify, qui sont de type "type-use". Les développeurs Kotlin doivent utiliser l'argument de compilateur suivant pour garantir une utilisation correcte :
-Xjspecify-annotations=strict(il s'agit de la valeur par défaut à partir de la version 2.1.0 du compilateur Kotlin). (Ib5367, b/326456246)
Version 1.7.0-beta02
18 septembre 2024
Publication d'androidx.car.app:app-*:1.7.0-beta02. La version 1.7.0-beta02 contient ces commits.
Modifications apportées à l'API
- Ajout de
KEY_ROOT_HINT_MEDIA_HOST_VERSION(I8796b). - Remplacer la classe
TabContents.Api8Builderpar le constructeur@ExperimentalCarApidans la classeTabContents.Builder(I26fbe) - Ajouter une action d'intent et des extras pour
CarMediaApp(I50782) - Marquage des API de messagerie comme non expérimentales (I0b070)
- Ajout du chargement d'éléments à distance à
SectionedItemTemplate(permet de charger de longues listes sans plantage) (I0d122) - Ajout de
SectionedItemTemplateà la liste des modèles compatibles dansTabTemplatede l'API 8. (Idc5d6)
Correction de bugs
- Suppression de la présentation manuelle de l'accès aux nouvelles API de plate-forme, car cela se fait automatiquement via la modélisation d'API lorsque vous utilisez R8 avec AGP 7.3 ou version ultérieure (par exemple, R8 version 3.3) et pour toutes les versions lorsque vous utilisez AGP 8.1 ou version ultérieure (par exemple, D8 version 8.1). Les clients qui n'utilisent pas AGP sont invités à passer à la version 8.1 ou ultérieure de D8. Consultez cet article pour en savoir plus. (I9496c, b/345472586)
Version 1.7.0-beta01
26 juin 2024
Publication d'androidx.car.app:app-*:1.7.0-beta01. La version 1.7.0-beta01 contient ces commits. Les fonctionnalités sont les mêmes que celles publiées dans la version alpha01, qui sont répétées ci-dessous :
Nouvelles fonctionnalités
- Carte avec contenu : nouveau modèle combinant un canevas de carte et un modèle de contenu (pour l'instant, il peut s'agir d'une liste, d'une grille, d'un volet ou d'un message).
RoutePreview,PlaceListNavigationetMapTemplatesont désormais obsolètes. Les modèles continueront de fonctionner tels quels.- Les applications exemples ont été mises à jour pour afficher l'utilisation de
MapWithContentau lieu des modèles obsolètes.
- Élément de conversation : nouvelles API pour afficher les conversations (messagerie instantanée, SMS) et la lecture de l'Assistant dans la voiture.
- Dimensions du véhicule : nouvelle API permettant de récupérer les dimensions du véhicule (données actuellement disponibles sur AAOS).
Modifications apportées à l'API
- Ajoutez le tag
@ExperimentalCarApiàMediaPlaybackTemplate.Builder. (Ic1957) - Ajoute un nouveau
SectionedItemTemplatedans la version expérimentale. (I5958a) - Présentation de
CarAppApiLevel 8(I3fa22) - Ajoute
MediaPlaybackTemplatepour afficher le contenu pendant la lecture multimédia dans la bibliothèque d'applications pour voitures. (I3c10d) - Ajout d'une nouvelle API permettant aux applications de détecter si le système est compatible avec l'audio en arrière-plan pendant la conduite (I0f868)
Correction de bugs
- Correction de certaines instances de fuites de mémoire et de plantages dans le code client CAL et dans l'application exemple de navigation CAL. (I55e04)
- Remplacez
requireNotNull instancesdans la méthodeonDestroydeBaseCarAppActivitypar des vérifications if-null pour éviter les plantages. (Iec676)
Version 1.7.0-alpha02
17 avril 2024
Publication d'androidx.car.app:app-*:1.7.0-alpha02. La version 1.7.0-alpha02 contient ces commits.
Nouvelles fonctionnalités
- Ajout d'indicateurs obsolètes pour les modèles basés sur des cartes, qui seront désormais alimentés par le modèle
MapWithContent.
Modifications apportées à l'API
- Abandonner les anciens
MapTemplate,RoutePreviewNavigationTemplateetPlaceListNavigationTemplateet encourager l'utilisation du nouveauMapWithContentTemplate(Ib0a08)
Version 1.7.0-alpha01
3 avril 2024
Publication d'androidx.car.app:app-*:1.7.0-alpha01. Nous avons modifié notre système de gestion des versions de bibliothèque pour qu'il corresponde à la version active de CarApi. Cela permet de réduire la confusion concernant le système de dénomination, en fonction des commentaires des développeurs. Par conséquent, nous allons passer directement des versions 1.5 et 1.6 à la version 1.7. La version 1.7.0-alpha01 contient ces commits.
Nouvelles fonctionnalités
- Carte avec contenu : nouveau modèle nommé
MapWithContentqui accepte les listes, les grilles, les volets et les messages comme contenu dans une carte.- Les modèles de cartes
RoutePreviewetPlaceListNavigationsont désormais obsolètes. - Les exemples d'applications ont été mis à jour pour montrer le fonctionnement des modèles obsolètes à l'aide de
MapWithContent.
- Les modèles de cartes
- Élément de conversation : nouvelles API pour afficher les conversations (messagerie instantanée, SMS) et la lecture de l'Assistant dans la voiture.
- Dimensions du véhicule : nouvelle API permettant de récupérer les dimensions du véhicule (données actuellement disponibles sur AAOS).
Modifications apportées à l'API
- Marquer le type d'image de ligne extra-petite comme expérimental (I5184b)
- Ajout de l'API
CarInfo#fetchExteriorDimensions, qui permet d'accéder aux informations sur les dimensions extérieures du véhicule, telles que la hauteur, la largeur, etc. (Ia40c5) - Suppression du tag
ExperimentalAPIdeMapWithContentTemplate(I66db8) - Mettez à jour le paramètre
GridItem#setTitlepour qu'il puisse accepter la valeur "null". (I3d610) - L'API
GetHeaderne nécessite pas l'API 7, car elle est rétrocompatible (I8c812). - Ajout de la prise en charge de
HeaderdansListTemplate, arrêt deheaderAction,headerTitleetactionStrip(I7ae01) - Abandonner
title,headerActionetactionStripdansGridTemplateet ajouter la prise en charge deHeader(I41a9c) - Suppression de l'exigence de niveau 7 pour les API expérimentales : getters/setters de la forme et de la taille de l'image de l'élément
GridTemplate, méthodesGridItempour obtenir/définir le badge. (Id71eb) - Abandonner
title,headerAction,actionStripdansPaneTemplate, ajouter la prise en charge deHeader(I23154) - La télémétrie Media Center est passée de
BroadcastReceiverà "Browse Custom Action" (Action de navigation personnalisée). (I4185f) - Ajout de la prise en charge de l'attribut
HeaderdansMessageTemplate. La compatibilité avecActionStrip,headerActionettitleest désormais obsolète. (Ie2de8) - Modification de la visibilité constante des alertes (Icf8a8)
- Suppression de l'attribut
isLoadingdu modèle parent (I651e6) - Ajout d'extras pour informer les applications multimédias des principaux paramètres de l'UI (I85ca2)
- Ajout de la fonctionnalité d'analyse du centre multimédia à
MediaExtensions(I7ce28) - Ajout d'une option pour les images très petites dans les lignes. (I72c03)
Correction de bugs
- Mise à jour du Javadoc sur
ConversationItempour indiquer que les messages doivent être triés du plus ancien au plus récent. (I77a2a) - Mise à jour de la logique de troncature
ListTemplatepour supprimer les messages les plus anciens deConversationItem(Ie0a61)
Version 1.4
Version 1.4.0
29 mai 2024
Publication d'androidx.car.app:app-*:1.4.0. La version 1.4.0 est une promotion de la version 1.4.0-rc02.
Changements importants depuis la version 1.3.0
- Rendu de la carte du groupe d'instruments pour les applications de navigation
- Nouveau modèle d'onglet pour améliorer la mise en page et l'usabilité de l'application
- Compatibilité avec les limites de tâches adaptatives
- Actions secondaires sur les éléments de liste
Version 1.4.0-rc02
13 décembre 2023
Publication d'androidx.car.app:app-*:1.4.0-rc02. Liste des commits de la version 1.4.0-rc02 Corrections mineures uniquement
Correction de bugs
- Mise à jour du Javadoc sur
ConversationItempour indiquer que les messages doivent être triés du plus ancien au plus récent (I77a2a) - Mise à jour de la logique de troncature
ListTemplatepour supprimer les messages les plus anciens deConversationItem(Ie0a61)
Version 1.4.0-rc01
1er novembre 2023
Publication d'androidx.car.app:app-*:1.4.0-rc01 sans modification notable. Liste des commits de la version 1.4.0-rc01
Version 1.4.0-beta02
20 septembre 2023
Publication d'androidx.car.app:app-*:1.4.0-beta02. Liste des commits de la version 1.4.0-beta02 Cette version est presque identique à la version bêta 01, mais réduit la configuration requise de compileSdk à 33.
Correction de bugs
- Correction d'un bug qui empêchait l'affichage correct des écrans de chargement dans les onglets. (cae860)
Version 1.4.0-beta01
9 août 2023
Publication d'androidx.car.app:app-*:1.4.0-beta01. Liste des commits de la version 1.4.0-beta01
Remarque : La version 1.4-beta01 nécessite compileSdk34, qui est toujours en cours de développement. La version 1.4-beta02 corrigera ce problème. Vous pouvez également ajouter
android.suppressUnsupportedCompileSdk=34au fichiersettings.gradlede votre projet pour supprimer temporairement l'avertissement de manière sécurisée.
Nouvelles fonctionnalités
- Rendu de la carte du groupe d'instruments pour les applications de navigation
- Nouveau modèle d'onglet pour améliorer la mise en page et la facilité d'utilisation des applications
- Compatibilité avec les limites de tâches adaptatives
- Actions secondaires sur les éléments de liste
Modifications apportées à l'API
- Voir alpha02
Version 1.4.0-alpha02
26 juillet 2023
Publication d'androidx.car.app:app-*:1.4.0-alpha02. Liste des commits de la version 1.4.0-alpha02
- La version Alpha02 est destinée à préparer la prochaine version bêta01.
Nouvelles fonctionnalités
- Affichage de cartes sur le combiné d'instruments pour les applications de navigation
- Ajout d'onglets pour les applications afin d'améliorer la mise en page
- Ajout d'options de rendu des modèles de liste / grille
- Ajout de nouvelles catégories pour la météo et les communications
- Déplacement de plusieurs API vers la prochaine version de CarApi 7
Modifications apportées à l'API
- Ajout de champs multimédias à
CarMessage(I5aaf6) - Ajout d'actions personnalisées à
ConversationItemdans la bibliothèque d'applications pour voitures. (Ie5ed6) - Ajout d'extras pour indiquer qu'un élément multimédia est lu avec un format audio immersif et afficher le logo de son format de contenu (Icb5bb)
- Ajoutez un nouveau type d'action, l'API
ActionsConstraints, pour prendre en charge le bouton de rédaction. (I31661) set/getTemplatedéfini commeset/get ContentTemplate(Ica036)- Le paramètre du modèle serait désormais
@NonNull. Mise à jour de la documentation de l'APIMapWithContentTemplate(I0f8ed) - Suppression du tag
@ExperimentalCarApipour les actions dansListTemplatepour le lancement dans CAL 1.4 (I2cfcb) - Suppression du tag
@ExperimentalCarApipourTabTemplate(Ifcb82) - Suppression des annotations
@ExperimentalCarApides actions secondaires et des décorations des lignes (I8487e) - Ajoute l'ID du contenu de l'onglet actif à
TabTemplateet abandonne l'état actif sur les onglets (I96932) - Ajout de la propriété
ItemImageShapeàGridTemplate(Ibf431) - Ajoutez la propriété
ItemSizeàGridTemplate, qui contrôle la taille des éléments de la grille en fonction de buckets relatifs (petit, moyen et grand). (Icdb3b) - Ouvrez l'accès à l'API pour les développeurs afin d'obtenir une copie de la pile d'écrans actuelle. (I48107)
- Ajout d'une catégorie pour les applications météo à la bibliothèque d'applications pour voitures (I2be44)
- Ajout d'une catégorie pour les applications d'appel à la bibliothèque d'applications pour voitures (Icab33)
- Remplacement de
GridItem.Builder#setBadge()par des méthodessetImage()surchargées (Id2000) - Ajouter la propriété d'icône à Badge (I629b2)
- Ajout d'une méthode pour définir la couleur d'arrière-plan du badge en forme de point (I6411c)
- Ajoutez la propriété Badge à
GridItem, ce qui permet d'afficher un badge au-dessus d'une imageGridItem. (I95de7) - Ajout d'un objet Badge expérimental qui représente un badge à afficher sur une image. (I9878d)
Version 1.4.0-alpha01
22 février 2023
Publication d'androidx.car.app:app-*:1.4.0-alpha01. Liste des commits de la version 1.4.0-alpha01
Modifications apportées à l'API
- Ajout d'actions de niveau supérieur à
GridTemplatedans la bibliothèque d'applications pour voitures. (Id0191) - Ajout d'actions de niveau supérieur à
ListTemplatedans la bibliothèque d'applications pour voitures. (I9efab) - Ajout d'extras pour associer le sous-titre d'un élément multimédia ou sa description à d'autres éléments multimédias. (Ic84bf)
- Mise à jour du niveau de l'API pour les actions de ligne vers le niveau 6. (Ie0a69)
- Ajout des rappels de messagerie à A4C. (Ie3986)
Correction de bugs
- Ajout des références de documentation Java manquantes pour
CarMessage. (I5db1c) - Remplacement d'
equals()ethashCode()pourConversationItemetCarMessage. (I6fd10) - Amélioration de la validation de
ConversationItem.mMessages(nécessite une valeur non nulle, non vide). (Iafc51) - Ajout des annotations
@Keepaux champsConversationItem. (I5d250) - Mise à jour des documents Java pour la décoration des lignes et les actions secondaires. (I000b6)
Version 1.3
Version 1.3.0-rc01
7 décembre 2022
Publication d'androidx.car.app:app-*:1.3.0-rc01. Liste des commits de la version 1.3.0-rc01
- Corrections de bugs mineurs de la version bêta 01. Aucune modification majeure.
Version 1.3.0-beta01
7 septembre 2022
Publication de androidx.car.app:app:1.3.0-beta01, androidx.car.app:app-projected:1.3.0-beta01, androidx.car.app:app-automotive:1.3.0-beta01 et androidx.car.app:app-testing:1.3.0-beta01. Liste des commits de la version 1.3.0-beta01
- Les applications pour voiture qui exploitent cette bibliothèque peuvent désormais accéder au Play Store via le niveau d'API 5. Pour en savoir plus, consultez notre guide du développeur. Les fonctionnalités annotées avec un niveau d'API 5 ou inférieur sont compatibles avec Android Auto 8.1, Google Automotive App Host 1.4 et leurs versions ultérieures.
Nouvelles fonctionnalités
La version beta01 vient ajouter les fonctionnalités suivantes à celles déjà apportées par la version 1.3.0-alpha01 de la bibliothèque Car App. Les modifications de fonctionnalités mentionnées ici interviennent exclusivement du côté de l'hôte. Les API ne sont pas modifiées.
- La barre de navigation flottante peut continuer à s'afficher même lorsque l'utilisateur affiche un écran de sélection basé sur une carte dans
PlaceListNavigationTemplate,RoutePreviewNavigationTemplateetMapTemplate. Pour cela, mettez à jour les informations de navigation viaNavigationManager.updateTrip(). - Activer le bouton d'action avec
FLAG_DEFAULTajoute une animation d'expiration. Ce bouton sera activé par défaut après le délai d'inactivité. ([API 5 - All Templates]) - Le sous-texte d'une
Rowne sera pas tronqué lorsque le véhicule est garé, mais sera limité à deux lignes pendant la conduite. ([API 5 - All Templates]) - Prise en charge de l'état "désactivé" pour les composants
Action,ToggleetRow. ([API 5 - All Templates])
Modifications apportées à l'API
- Assouplissement des contraintes de listes
MapTemplatepour permettre la prise en charge de listes sélectionnables. (I961ed) - Suppression de la contrainte pour les Actions d'en-tête pour prendre en charge les icônes personnalisées. (Iad28f)
- Ajout d'une contrainte
setOnClickListenerAllowed()àActionsConstraints. Cette action a permis àActionde définirOnClickDelegate()sur des actions, à l'exception des types d'icônes standards. (TYPE_APP_ICON,TYPE_BACKetTYPE_PAN) (I3c745)
Correction de bugs
- Prise en charge des écrans incurvés par Android Automotive Template Host 1.4 et versions ultérieures. (
[Host change])
Version 1.3.0-alpha01
27 juillet 2022
Publication de androidx.car.app:app:1.3.0-alpha01, androidx.car.app:app-projected:1.3.0-alpha01, androidx.car.app:app-automotive:1.3.0-alpha01 et androidx.car.app:app-testing:1.3.0-alpha01. Liste des commits de la version 1.3.0-alpha01
Les fonctionnalités annotées avec un niveau d'API 5 sont compatibles avec Android Auto 7.9 et les versions ultérieures.
Nouvelles fonctionnalités
- Niveau d'API 5 : nouveau
MapTemplateutilisable par les applications de navigation pour afficher un volet ou lister du contenu à côté d'une carte. (If5826, If44b8) - Niveau d'API 5 : nouvelle API
CarAudioRecordpermettant l'enregistrement d'entrées audio via le micro du véhicule hôte. (I5e71a) - Niveau d'API 5 : nouvelle API
SuggestionManagerpermettant aux applications de fournir des suggestions à l'hôte. (I5c103) - Niveau d'API 5 : nouvelle API
Alertpermettant d'afficher des notifications contextuelles dans leNavigationTemplate. (I163a7, I5ad70) - Niveau d'API 5 : nouveaux composants
HeaderetMapControllerfacilitant la réutilisation entre les modèles. (If5826) - Ajout de la catégorie
androidx.car.app.category.POIpour la mise en œuvre d'applications de POI.androidx.car.app.category.PARKINGetandroidx.car.app.category.CHARGINGsont désormais obsolètes. (I59da1)
Modifications apportées à l'API
- Niveau d'API 5 : nouvelle méthode
onClickdans l'interfaceSurfaceCallbackpermettant l'interactivité des gestes sur la carte. (Ia9777) - Niveau d'API 5 : nouveaux indicateurs
Action.FLAG_IS_PERSISTENTetAction.FLAG_DEFAULTpour décrire les composantsAction. (I96318, I5ad70) - Niveau d'API 5 : nouvel état activé/désactivé pour les composants
Action,RowetToggle, avec prise en charge de l'hôte prévue pour la version 1.3.0-beta01 de la bibliothèque. (Id8a09) - Niveau d'API 5 : priorité donnée au nouveau composant
HeaderviasetHeadersurPlaceListNavigationTemplate.BuilderetRoutePreviewNavigationTemplate.Builder. Les méthodessetTitleetsetHeaderActionsont désormais obsolètes. (I30e6a) - Niveau d'API 5 : nouvelle méthode
setOnContentRefreshListnersurPlaceListMapTemplate.BuilderetPlaceListNavigationTemplate.Builderdestinée à être utilisée avec les implémentations de la nouvelle interfaceOnContentRefreshListner. - Niveau d'API 5 : nouveaux éléments
setTripTextetsetTripIcondans leTravelEstimate.Builderpermettant de personnaliser la fiche d'estimation du temps de trajet. (Idcc6d, Ic620d) - Prise en charge des éléments
CarIconSpandans le titre duPaneTemplate. (Ia1ee0) - Prise en charge des éléments
CarIconSpandans le titre et le texte d'uneRow. (Ic1e3c) - Les éléments
ActionStripd'une carte peuvent désormais inclure jusqu'à quatre actions. (If3522) - Élévation de l'API Car App au niveau 5. (I26b8e)
- Les en-têtes et titres sont désormais facultatifs pour les éléments
PlaceListMapTemplate,PlaceListNavigationTemplate,RoutePreviewNavigationTemplate,GridTemplate,ListTemplate,LongMessageTemplate,MessageTemplate,PaneTemplateetSignInTemplate. (I2078d, Icadde)
Correction de bugs
- Modification des règles de dimensionnement des images dans
PaneTemplateafin d'utiliser un cadre carré. (Idd72e) - Correction d'une exception survenant lorsque la pile d'écran était modifiée après
State.DESTROYED. (I3c8eb) - Ajout d'une vérification de valeur nulle pour la tentative de récupération de l'icône de l'application. (I3f710)
- Modification de l'API Car Hardware afin d'utiliser
STATUS_UNKNOWNpar défaut, au lieu deSTATUS_UNAVAILABLE. (Ic9444) - Vérification de l'existence de l'écran avant la création d'une surface. (Ice027a)
- Correction d'un bug impliquant
STATUS_UNIMPLEMENTEDdansCarValue.equals(). (I24451)
Version 1.2
Version 1.2.0
9 novembre 2022
Publication d'androidx.car.app:app-*:1.2.0. Liste des commits de la version 1.2.0
- Il s'agit d'une version de stabilisation. Il n'y a aucun changement par rapport à la version v1.2.0-rc01.
Version 1.2.0-rc01
23 mars 2022
Publication d'androidx.car.app:app-*:1.2.0-rc01. Liste des commits de la version 1.2.0-rc01
- Cette version est une version de stabilisation et n'introduit aucune modification d'API par rapport à
v1.2.0-beta02. De nouvelles fonctionnalités expérimentales (API de niveau 5) ont été ajoutées et sont destinées aux versions futures des plates-formes Android Auto et Android Automotive OS.
Correction de bugs
- Correction d'une exception survenant lorsque la pile d'écran était modifiée après
State.DESTROYED. (I3c8eb) - Mise à jour de l'API
CarSensorspour indiquer que ces éléments ne sont pas implémentés pour AAOS. (Idd57b) - Mise à jour de
PlaceListMapTempalte.Builder#setCurrentLocationEnabledpour indiquer que ACCESS_COARSE_LOCATION serait suffisant pour la fonctionnalité. (I510c2) - Rendu facultatif le numéro de sortie pour les manœuvres de type "rond-point avec angle". (Ife7d1)
Version 1.2.0-beta02
26 janvier 2022
Publication d'androidx.car.app:app-*:1.2.0-beta02. Liste des commits de la version 1.2.0-beta02
Les applications pour voiture développées avec cette version de la bibliothèque et ciblant la plate-forme Android Automotive OS peuvent désormais être publiées sur le canal de test ouvert du Play Store. Pour en savoir plus, consultez le guide du développeur.
Les fonctionnalités annotées avec un niveau d'API 4 ou inférieur sont compatibles avec Android Auto 7.2 et les versions ultérieures, ainsi qu'avec la nouvelle plate-forme Android Automotive OS. Consultez la section Known Issues ci-dessous pour les mises en garde.
Modifications apportées à l'API
- Ajout d'une API expérimentale
setOnContentRefreshListeneraux modèles de POI. (I6bf22)
Correction de bugs
- Correction d'une fuite de mémoire dans
CarAppServicelorsque l'hôte de la voiture se dissocie. (I5c9ca, b/203594731) - Mise à jour du Javadoc
CarAppActivitypour inclure les exigences du mode de lancement singleTask. (Id2f95) - Réduction des problèmes d'affichage lors de la reprise. (Iff7e0)
Problèmes connus
- L'élément
ActionStripsur les cartes dansPlaceListNavigationTemplateetRoutePreviewNavigateTemplatesera disponible dans les prochaines versions des plates-formesAndroid AutoetAndroid Automotive OS.
Version 1.2.0-alpha02
15 décembre 2021
Publication d'androidx.car.app:app-*:1.2.0-alpha02. Liste des commits de la version 1.2.0-alpha02
Les fonctionnalités annotées avec un niveau d'API 4 sont passées de la version expérimentale à la version stable, y compris les éléments ActionStrip sur les cartes dans PlaceListNavigationTemplate et RoutePreviewNavigateTemplate, l'image CarIcon dans les éléments Pane et la QRCodeSignInMethod et la possibilité de définir des indicateurs d'affichage dans les éléments Action.
Nouvelles fonctionnalités
- Augmentation du nombre maximal d'éléments par
Pane, passant de 2 à 4 dans Android Auto 7.1 et les versions ultérieures.
Modifications apportées à l'API
- Ajout d'une méthode expérimentale
toString()àCarUnit. (I36a3b)
Correction de bugs
- Correction d'un plantage qui survenait dans
CarAppPermissionActivitysi le rappel était désactivé. (If9823) - Mise à jour de la limite de liste par défaut
Pane, passant à 4. (I0068b)
Version 1.2.0-alpha01
3 novembre 2021
Publication d'androidx.car.app:app-*:1.2.0-alpha01. Liste des commits de la version 1.2.0-alpha01
Toutes les nouvelles fonctionnalités v1.2.0 (niveaux d'API 4 et au-delà) sont actuellement en phase de test et destinées aux versions futures des plates-formes Android Auto et Android Automotive OS. Pour en savoir plus, consultez le guide du développeur.
Modifications apportées à l'API
- Transition de l'API
AutomotiveCarInfovers la phase expérimentale. (Ia13e5) - Ajout du niveau d'API 4 à la bibliothèque Car App. (I2a2e7)
- Niveau d'API 4 : prise en charge des éléments
CarIcondéfinis dans unPane. (Ifcc12) - Niveau d'API 4 : ajout d'une méthode de connexion par code QR. (Ib623e)
- Niveau d'API 4 : ajout de set/getFlags aux composants
Action. (Ic03ab) - Niveau d'API 4 : prise en charge des fonctions panorama et zoom dans
PlaceListNavigationTemplateetRoutePreviewNavigationTemplate. (I9d8a3)
Correction de bugs
- Niveau d'API 4 : ajout d'un mécanisme permettant aux applications d'envoyer des notifications de position à l'hôte de la voiture. (I3bad3)
- Correction d'un problème de logique de validation de l'hôte, qui n'identifiait pas correctement l'autorisation Templates_RENDERER. (I62618)
Version 1.1.0
Version 1.1.0
15 décembre 2021
Publication d'androidx.car.app:app-*:1.1.0. Liste des commits de la version 1.1.0
Cette version est une version de stabilisation et n'introduit aucune modification par rapport à v1.1.0-rc01. Consultez également les notes de version pour v1.2.0-alpha02 pour en savoir plus sur les nouvelles fonctionnalités de la bibliothèque Car App.
Modifications importantes depuis la version 1.0.0
- Niveau d'API 2 : ajout des éléments
SignInTemplateetLongMessageTemplate, pouvant être utilisés pour les flux de connexion lorsque le véhicule est à l'arrêt. - Niveau d'API 2 : prise en charge de l'interactivité dans les cartes dans le
NavigationTemplate. - Niveau d'API 2 : prise en charge des éléments de texte modulés en fonction de la longueur, pour permettre aux applications de fournir plusieurs versions des chaînes à afficher en fonction de la taille de l'écran du véhicule.
- Niveau d'API 3 : ajout de
CarHardwareManager, permettant d'interroger les données matérielles du véhicule, telles que le modèle et la marque, les niveaux de carburant et d'autres capteurs.
Version 1.1.0-rc01
3 novembre 2021
Publication d'androidx.car.app:app-*:1.1.0-rc01. Liste des commits de la version 1.1.0-rc01
Cette version est une version de stabilisation et n'introduit aucune modification d'API par rapport à v1.1.0-beta01. De nouvelles fonctionnalités expérimentales (API de niveau 4) ont été ajoutées et sont destinées aux versions futures de la plate-forme Android Auto. Pour en savoir plus sur les API expérimentales, consultez les notes de version pour v1.2.0-alpha01.
Version 1.1.0-beta01
1er septembre 2021
Publication d'androidx.car.app:app-*:1.1.0-beta01. Liste des commits de la version 1.1.0-beta01
Toutes les fonctionnalités de la v1.1.0 (niveau d'API 2 et au-delà) sont entièrement compatibles avec Android Auto 6.7 et les versions ultérieures. Pour en savoir plus, consultez le guide du développeur.
Modifications apportées à l'API
- Suppression de
Managerdes interfaces publiques. (Ie381b) - Ajout de la possibilité de définir un arrière-plan de marque personnalisé pour la demande d'autorisation. (I74b76)
- Ajout de
ScreenManager.getStackSize. (I0b16a) - Suppression du constructeur
ScreenControllerqui prend explicitementTestCarContext. (Iefebc)
Correction de bugs
- Ajout d'une vérification du niveau d'API lors de la création de
CarHardwareManager. (I48f9b) - Ajout de vérifications des utilisations non valides de
CarSpandans l'API. (I65ae6) - Correction d'un problème survenant lorsqu'un
Screenétait marqué comme terminé pendant sa création et entraînant un dysfonctionnement de la pile. (I81b13) - Correction d'un problème survenant lorsque des actions étaient associées à des icônes dans
CarAppExtender, entraînant l'enregistrement d'erreurs Automotive OS parCarNotificationManager.notify. (I3633d) - Ajout d'une méthode de handshake pour l'application et l'hôte afin de déterminer la version de l'API. (I7d6f8)
Version 1.1.0-alpha02
21 juillet 2021
Publication d'androidx.car.app:app-*:1.1.0-alpha02. Liste des commits de la version 1.1.0-alpha02
Nouvelles fonctionnalités
- Niveau d'API 3 : ajout de
CarHardwareManager, permettant d'interroger les données matérielles du véhicule, telles que le modèle et la marque, les niveaux de carburant et d'autres capteurs. En date de publication, cette fonctionnalité est uniquement disponible dans le canal de test ouvert pour Android Auto 6.7 et ses versions ultérieures. Les tests sur ordinateur nécessitent une nouvelle version deDesktop Head Unit, qui sera publiée séparément. Consultez la page Tester les applications Android pour voitures pour savoir quand la nouvelle version sera disponible. - Suivez le guide du développeur et la documentation de référence de la bibliothèque pour en savoir plus et obtenir des consignes de conception concernant l'utilisation de ces fonctionnalités dans les hôtes de voiture compatibles avec le niveau d'API 3.
Modifications apportées à l'API
- Consolidation des méthodes de cycle de vie
SessionControlleretScreenControlleren une seule méthodemoveToState. (I1ed00) - Ajout de
CarContext#getHostInfo(). (I8977e) - Suppression des champs obsolètes. (I67168)
- Mise à jour de
SessionControlleretScreenControllerpour exposer directement les constructeurs. (Iabf22) - Suppression de
PinSignInMethod.BuilderetProviderSignInMethod.Builder. (I9f0cb) - Ajout de "setCarAppResult()" pour permettre l'utilisation d'applications sur modèles "for result" dans AAOS. (I37741)
- Annotation des interfaces
CarHardwareavec@MainThread. (Ib2f85) - Changement de nom :
OnCarDataListenerdevientOnCarDataAvailableListener. (I518ca) - Mise à jour du nom et du Javadoc des méthodes
CarInfo,SpeedetMileage. (I86672) - Changement de nom :
TolldevientTollCard. (I3e7c8) - Suppression et remplacement de
PinSignInMethod.getPin(obsolète) parPinSignInMethod.getPinCode. (I996ce) - Suppression et remplacement de
OnInputCompletedListenerparInputCallback. (Ib5be1) - Modification de
PinSignInMethodafin de recevoirCharSequenceau lieu deString. (I275d5)
Correction de bugs
- Corrections du Javadoc pour le matériel du véhicule. (I2abbc)
Contribution externe
Problèmes connus
- Dans
SignInTemplate, l'utilisation deInputSignInMethodpeut entraîner unNullPointerExceptiondans l'hôte de la voiture. Ce problème sera résolu dans la prochaine version de la bibliothèque. Pour contourner le problème, incluez la ligne suivante dans la configuration ProGuard de votre application :-keep class androidx.car.app.model.signin.InputSignInMethod { *; }
Version 1.1.0-alpha01
16 juin 2021
Publication d'androidx.car.app:app:1.1.0-alpha01, androidx.car.app:app-automotive:1.1.0-alpha01 et androidx.car.app:app-testing:1.1.0-alpha01. Liste des commits de la version 1.1.0-alpha01
Nouvelles fonctionnalités
- Niveau d'API 2 : ajout des éléments
SignInTemplateetLongMessageTemplate, pouvant être utilisés pour les flux de connexion lorsque le véhicule est à l'arrêt. - Niveau d'API 2 : prise en charge de l'interactivité dans les cartes dans le
NavigationTemplate. - Niveau d'API 2 : prise en charge des éléments de texte modulés en fonction de la longueur, pour permettre aux applications de fournir plusieurs versions des chaînes à afficher en fonction de la taille de l'écran du véhicule.
- Suivez le guide du développeur et le Javadoc de la bibliothèque pour en savoir plus et obtenir des consignes de conception concernant l'utilisation de ces fonctionnalités dans les hôtes de voiture compatibles avec le niveau d'API 2.
Modifications apportées à l'API
- Définition des méthodes d'interface
*Callbackcomme méthodes par défaut. Changement de nom :OnRequestPermissionsCallbackdevientOnRequestPermissionsListener. (Ib3ec9) - Mise à jour des classes
androidx.car.app.hardwarepour supprimer les classes de compilateurs et de paramètres inutiles. (I67beb) - Ajout de classes
androidx.car.app.hardwarepermettant d'accéder à des données spécifiques du véhicule, comme le carburant, la batterie et la vitesse. (Iff3c9) - Prise en charge des éléments
ActionStripdansMessageTemplate. (Ida657) - Ajout d'
setLoadingàMessageTemplate. (I2a4b5) - Changement de nom :
ConnectionToCardevientCarConnection. (Ife9bd) - Modification de
NavigationTemplateafin de renvoyer unPanModeDelegateexplicite. (I13877) - Modification de l'ordre des paramètres pour
CarContext.requestPermissions. (Ib890a) - Mise à jour de la clé de métadonnées afin de définir le niveau d'API minimal du véhicule via
androidx.car.api.minCarApiLevel. (Ib0d41) - Création d'une API permettant d'observer l'état de connexion du véhicule. (Ifc935)
- Prise en charge de la définition d'une fonction d'activation pour une
Action. Ajout du mode panoramique aux types d'Action. (Ica6af) - Création de
CarNotificationManagerpour prendre en charge l'envoi de notifications dans le véhicule. (I10d7a) - Ajout de
ConstraintManagerpour fournir des limites de liste à partir de l'hôte. (I8690e) - Ajout d'une API pour le mode panoramique et les bandes d'actions sur carte dans le
NavigationTemplate. (I77aa6) - Ajout d'une API pour les fonctions panorama et zoom dans
SurfaceCallbackpour les applications de navigation. (Id5e9d) - Élévation de
CarAppApiLevelau niveau 2. (Ic1540) - Ajout de la possibilité de demander des autorisations à partir d'un
CarAppService. (I5421e) - Ajout de l'annotation
RequiresCarApi(2)à l'API multitexte. (Iacb62) - Prise en charge de multiples variantes de texte dans le titre du modèle de demi-liste. (Ib8df7)
- Ajout d'un
LongMessageTemplate(nécessite le niveau 2 de l'API Car). (Ic5cee)
Correction de bugs
- Mise à jour des critères de taille des images afin de tenir compte des écrans de voiture plus grands. (I116dc)
- Limitation à 2 du nombre d'actions ajoutées dans le corps d'un modèle. (I32157)
- Associé toute création de
PendingIntentdans la bibliothèque Car App à la création d'un indicateur. (If84fe, b/186394900) - Mise à jour du Javadoc pour autoriser les modifications du texte des éléments
Rowen tant qu'actualisation. (If3f9c) - Transformation de
androidx.activity:activity:1.2.0en dépendance d'API. (Id1cb9) - Modification de
SignInTemplateetLongMessageTemplateafin de restreindre les actions dans leurs corps à la catégorie "Véhicule à l'arrêt". Mise à jour de la documentation pour indiquer que ces actions ne s'afficheront que lorsque la voiture est garée. (Iddaa9) - Correction d'une exception qui survenait lors de l'affichage d'un
Screenpendant le démarrage. (Ifcf40, b/184664896) - Prise en charge de la personnalisation de la couleur de texte dans
ForegroundCarColorSpan. (I69e59) - Correction d'un problème qui entraînait l'observation de
ON_DESTROYsur uneSessionaprès l'exécution deON_DESTROYsur unScreen. (I52e01, b/183696617) - Mise à jour du Javadoc concernant les cas où définir le temps restant d'une
TravelEstimatesur une valeur inconnue est autorisé. (I99610, b/183632456) - Mise à jour de
Actionafin de prendre en chargeForegroundColorSpandans le titre et dans les couleurs d'arrière-plan personnalisées. (I578e4) - Blocage de l'exécution de
NavigationManagerCallback#onStopNavigationsi le rappel est effacé avant l'exécution par l'exécuteur. (I7fc5e, b/181143772) - Correction d'un problème qui exigeait que l'application adopte explicitement une dépendance sur "lifecycle-common-java8". (I8b8c8)
Problèmes connus
- Dans
SignInTemplate, le clavier à l'écran affiche une icône de recherche au lieu d'une icône de saisie lorsque l'utilisateur souhaite confirmer une entrée. Pour contourner ce problème, les utilisateurs peuvent accéder au clavier du téléphone qui s'active lorsque le champ de saisie est sélectionné. - Dans Android Auto 6.5, les rappels de fonction panoramique et zoom dans
SurfaceCallbackpeuvent être invoqués de manière incorrecte pour certains gestes tactiles.
Car App : version de test 1.0.0
Version 1.0.0-alpha01
24 mars 2021
Publication d'androidx.car.app:app-testing:1.0.0-alpha01. Liste des commits de la version 1.0.0-alpha01
Première version Jetpack de cette bibliothèque, précédemment limitée aux tests de sources fermés. Consultez nos exemples pour savoir comment utiliser cette bibliothèque dans vos tests.
Nouvelles fonctionnalités
- Les contrôleurs des classes de modèle ont été supprimés. Les getters de modèle font désormais partie de la surface d'API publique, permettant de valider les valeurs définies dans les compilateurs.
- Le précédent
CarAppServiceControllera été remplacé par le nouveauSessionControllerpour les tests de logiques associées au cycle de vie des connexions à l'hôte.
Version 1.0.0
Version 1.0.0
21 avril 2021
Publication d'androidx.car.app:app:1.0.0. Liste des commits de la version 1.0.0
Principales fonctionnalités de la version 1.0.0
- Début avril, nous avons annoncé que les applications pouvaient commencer à publier des versions de production avec
androidx.car.app:app:1.0.0-rc01. La version 1.0.0 de la bibliothèque Car App est désormais stable et entièrement compatible avec Android 6.1 et les versions ultérieures. - Référez-vous au guide du développeur pour découvrir comment créer des applications de navigation, de stationnement et de charge pour Android Auto exploitant cette bibliothèque.
Correction de bugs
- Correction d'une exception qui survenait lors de l'affichage d'un
Screenpendant le démarrage. (70aae1, b/184664896) - Correction d'un problème qui entraînait l'observation de
ON_DESTROYsur uneSessionaprès l'exécution deON_DESTROYsur unScreen. (0ceecb, b/183696617)
Version 1.0.0-rc01
24 mars 2021
Publication d'androidx.car.app:app:1.0.0-rc01. Liste des commits de la version 1.0.0-rc01
Correction de bugs
- Correction d'un bug de condition de concurrence entraînant l'appel de
NavigationManagerCallback#onStopNavigationaprès l'effacement du rappel. Ce problème survenait si le rappel était effacé avant son exécution effective par l'exécuteur de rappels. (I7fc5e, b/181143772) - Correction d'un problème qui obligeait l'application à adopter explicitement une dépendance sur
lifecycle-common-java8. (I8b8c8) - Correction d'une
NullPointerExceptiondéclenchée lorsque l'application recevait un appelstopNavigationaprès avoir déjà supprimé un rappel. (Ib8b89, b/181143772) - Améliorations visant à empêcher les appels à une application dont l'état de cycle de vie n'est pas, au minimum,
CREATED. (I86965, b/179800224, b/177921120) - Correction d'un problème qui provoquait une erreur ANR de l'hôte lorsqu'un niveau d'API minimum non valide était spécifié dans le fichier manifeste de l'application. (Iffedd, b/174231592)
Version 1.0.0-beta01
24 février 2021
Publication d'androidx.car.app:app:1.0.0-beta01. Liste des commits de la version 1.0.0-beta01
Première version Jetpack de cette bibliothèque de sources, précédemment fermée. Compatible avec Android Auto 6.1 et les versions ultérieures. Référez-vous au guide du développeur pour découvrir comment créer des applications pour voiture exploitant cette bibliothèque.
Nouvelles fonctionnalités
- Introduction d'un
GridTemplateque votre application peut utiliser pour afficher une liste d'éléments d'interface utilisateur sous forme de grille. - Introduction d'une méthode
CarAppService.createHostValidatorpour vérifier que la connexion à l'hôte provient d'une source fiable (par exemple, Android Auto). - Ajout d'une API
CarAppExtender.Builder.setColor. (b/174231592)
Correction de bugs
- Correction d'un problème entraînant la réactivation du mauvais
Screenlors d'un affichage séquentiel d'écrans. (b/177590791)