Car App

Créez des applications conçues à partir d'un modèle pour Android Auto et Android Automotive OS.
Dernière mise à jour Version stable Version finale Version bêta Version alpha
26 juin 2024 1.4.0 - 1.7.0-beta01 -

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.4.0"

    // For Android Auto specific functionality
    implementation "androidx.car.app:app-projected:1.4.0"

    // For Android Automotive specific functionality
    implementation "androidx.car.app:app-automotive:1.4.0"

    // For testing
    testImplementation "androidx.car.app:app-testing:1.4.0"
}

Kotlin

dependencies {
    implementation("androidx.car.app:app:1.4.0")

    // For Android Auto specific functionality
    implementation("androidx.car.app:app-projected:1.4.0")

    // For Android Automotive specific functionality
    implementation("androidx.car.app:app-automotive:1.4.0")

    // For testing
    testImplementation("androidx.car.app:app-testing:1.4.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.

Signaler un nouveau problème

Pour en savoir plus, consultez la documentation sur l'outil Issue Tracker.

Version 1.7

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 caractéristiques sont identiques à celles publiées dans la version alpha01 et sont répétées ci-dessous:

Nouvelles fonctionnalités

  • Carte avec contenu:nouveau modèle de canevas de carte et modèle de contenu (pour le moment, il peut s'agir de Liste / Grille / Volet / Message).
    • Abandon de RoutePreview, PlaceListNavigation et MapTemplate. Les modèles continueront de fonctionner en l'état.
    • Les applications exemples ont été mises à jour pour afficher l'utilisation de MapWithContent au lieu des modèles obsolètes
  • Élément de conversation:nouvelles API permettant d'afficher les conversations (messagerie instantanée, SMS) et la lecture par l'Assistant dans la voiture.
  • Vehicle Dimensions (Dimensions des véhicules) : nouvelle API permettant de récupérer les mesures des véhicules (données actuellement disponibles sur AAOS).

Modifications apportées à l'API

  • Ajoutez le tag @ExperimentalCarApi à MediaPlaybackTemplate.Builder. (Ic1957).
  • Ajout d'un SectionedItemTemplate dans l'environnement expérimental. (I5958a).
  • Introduction de CarAppApiLevel 8. (I3fa22)
  • Ajout de MediaPlaybackTemplate pour afficher le contenu pendant la lecture de contenus multimédias dans la bibliothèque d'applications pour voitures. (I3c10d).
  • Ajout d'une API permettant aux applications de détecter si le système prend en charge 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 instances dans la méthode onDestroy de BaseCarAppActivity par 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, que le modèle MapWithContent alimentera à l'avenir.

Modifications apportées à l'API

  • Abandon des anciens MapTemplate, RoutePreviewNavigationTemplate et PlaceListNavigationTemplate, et incitation à l'utilisation du nouveau MapWithContentTemplate. (Ib0a08)

Version 1.7.0-alpha01

3 avril 2024

Publication d'androidx.car.app:app-*:1.7.0-alpha01. Nous avons déplacé le schéma de gestion des versions de notre bibliothèque pour qu'il corresponde à la version active de CarApi. Cela permet d'éviter toute confusion dans le schéma de nommage en fonction des commentaires des développeurs. Par conséquent, nous allons ignorer les versions 1.5 et 1.6 pour passer directement à la version 1.7 1.7.0-alpha01 qui contient ces commits.

Nouvelles fonctionnalités

  • Map with Content (Carte avec contenu) : nouveau modèle nommé MapWithContent, qui prend en charge la liste, la grille, le volet et le message en tant que contenu dans une carte.
    • RoutePreview, PlaceListNavigation et les modèles de carte sont désormais obsolètes.
    • Les applications exemples ont été mises à jour pour afficher les fonctionnalités des modèles obsolètes à l'aide de MapWithContent.
  • Élément de conversation: nouvelles API permettant d'afficher les conversations (messagerie instantanée et SMS) et lecture par l'Assistant dans la voiture.
  • Vehicle Dimensions (Dimensions des véhicules) : nouvelle API permettant de récupérer les mesures des véhicules (données actuellement disponibles sur AAOS).

Modifications apportées à l'API

  • Marque de très petite image comme type d'image 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 de la balise ExperimentalAPI de MapWithContentTemplate. (I66db8)
  • Mise à jour du paramètre GridItem#setTitle pour qu'il puisse avoir une valeur nulle. (I3d610).
  • L'API GetHeader ne nécessite pas l'API 7, car elle est rétrocompatible. (I8c812)
  • Ajout de la prise en charge de Header dans ListTemplate, arrêt de headerAction, headerTitle et actionStrip. (I7ae01)
  • Abandon de title, headerAction et actionStrip dans GridTemplate et ajout de la prise en charge de Header. (I41a9c)
  • Suppression des exigences du niveau 7 pour les API expérimentales: badge, getters/setters de forme d'image et GridTemplate de taille d'article, méthodes GridItem pour obtenir/définir un badge. (Id71eb).
  • Abandon de title, headerAction et actionStrip dans PaneTemplate, ajout de la prise en charge de Header. (I23154)
  • Télémétrie du centre multimédia BroadcastReceiver remplacée par une action de navigation personnalisée. (I4185f).
  • Ajout de la compatibilité avec l'attribut Header dans MessageTemplate. Abandon de la compatibilité avec ActionStrip, headerAction et title. (Ie2de8).
  • Modification de la visibilité constante des alertes. (Icf8a8)
  • Suppression de l'attribut isLoading du modèle parent. (I651e6)
  • Ajout d'extras pour informer les applications multimédias sur les principaux paramètres de l'interface utilisateur. (I85ca2)
  • Ajout de la fonctionnalité d'analyse du centre multimédia à MediaExtensions. (I7ce28)
  • Ajout d'une option permettant d'afficher une très petite image sur les lignes. (I72c03).

Correction de bugs

  • Mettez à jour le Javadoc sur ConversationItem pour indiquer que les messages doivent être triés du plus ancien au plus récent. (I77a2a).
  • Mise à jour de la logique de troncation de ListTemplate pour supprimer les messages les plus anciens de ConversationItem. (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 carte du groupe d'instruments pour les applications de navigation
  • Modèle Nouvel onglet pour améliorer la mise en page / la facilité d'utilisation 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 ConversationItem pour indiquer que les messages doivent être triés du plus ancien au plus récent. (I77a2a)
  • Mise à jour de la logique de troncation de ListTemplate pour supprimer les messages les plus anciens de ConversationItem. (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 Ce taux est presque identique à "beta01", mais abaisse l'exigence compileSdk à 33.

Correction de bugs

  • Correction d'un bug qui empêchait l'affichage correct des écrans de chargement sur 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 à l'état dev. 1.4-beta02 corrigera ce problème. Vous pouvez également ajouter android.suppressUnsupportedCompileSdk=34 au fichier settings.gradle de votre projet pour supprimer temporairement l'avertissement en toute sécurité.

Nouvelles fonctionnalités

  • Instrumentez le rendu de carte Cluster pour les applications de navigation.
  • Nouveau modèle d'onglet pour améliorer la facilité d'utilisation et la mise en page 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 sortie d'Alpha02 est destinée à préparer la prochaine version de beta01.

Nouvelles fonctionnalités

  • Compatibilité du rendu de carte sur le cluster d'instruments pour les applications de navigation
  • Ajout d'onglets pour les applications afin d'améliorer l'expérience de mise en page
  • Ajout d'options de rendu des modèles de liste / grille
  • Ajout de catégories pour la météo et les communications.
  • Transférer 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 à ConversationItem dans la bibliothèque Car App. (Ie5ed6)
  • Ajout d'extras pour indiquer qu'un élément multimédia est lu dans un format audio immersif et pour afficher le logo de son format de contenu. (Icb5bb)
  • Ajout d'un nouveau type d'action, l'API ActionsConstraints, pour prendre en charge le bouton "Nouveau message". (I31661).
  • Création de set/getTemplate en tant que set/get ContentTemplate. (Ica036)
  • Le paramètre du modèle est désormais @NonNull. Mise à jour de la documentation sur l'API MapWithContentTemplate. (I0f8ed)
  • Suppression du tag @ExperimentalCarApi pour les actions dans ListTemplate en vue du lancement dans CAL 1.4. (I2cfcb)
  • Suppression de la balise @ExperimentalCarApi pour TabTemplate. (Ifcb82)
  • Suppression des annotations @ExperimentalCarApi des actions secondaires et des décorations de la ligne. (I8487e)
  • Ajout de Content ID pour les onglets actifs à TabTemplate et abandon de l'état actif dans les onglets. (I96932)
  • Ajout de la propriété ItemImageShape à GridTemplate. (Ibf431)
  • Ajout de la propriété ItemSize à GridTemplate, qui contrôle le dimensionnement des éléments de grille en fonction de buckets relativement petits, moyens et grands. (Icdb3b).
  • Ouvrez l'accès à l'API pour que les développeurs puissent obtenir une copie de la pile d'écran 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 appeler des applications à la bibliothèque d'applications pour voitures. (Icab33)
  • Remplacement de GridItem.Builder#setBadge() par des méthodes setImage() surchargées. (Id2000)
  • Ajout d'une propriété d'icône au badge. (I629b2)
  • Ajout d'une méthode pour définir la couleur d'arrière-plan du badge à points. (I6411c)
  • Ajout d'une propriété Badge à GridItem, ce qui permet d'afficher un badge par-dessus une image GridItem. (I95de7).
  • Ajout d'un objet expérimental "Badge", qui représentera 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 à GridTemplate dans la bibliothèque d'applications pour voitures. (Id0191)
  • Ajout d'actions de niveau supérieur à ListTemplate dans 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() et hashCode() pour ConversationItem et CarMessage. (I6fd10)
  • Amélioration de la validation de ConversationItem.mMessages (nécessite une valeur non nulle, non vide). (Iafc51)
  • Ajout des annotations @Keep aux champs ConversationItem. (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, RoutePreviewNavigationTemplate et MapTemplate. Pour cela, mettez à jour les informations de navigation via NavigationManager.updateTrip().
  • Activer le bouton d'action avec FLAG_DEFAULT ajoute 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 Row ne 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, Toggle et Row. ([API 5 - All Templates])

Modifications apportées à l'API

  • Assouplissement des contraintes de listes MapTemplate pour 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)
  • Ajoutez une contrainte setOnClickListenerAllowed() à ActionsConstraints. Cela permettait à Action de définir OnClickDelegate() sur des actions autres que les types d'icônes standards. (TYPE_APP_ICON, TYPE_BACK et TYPE_PAN) (I3c745)

Correction de bugs

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 MapTemplate utilisable 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 CarAudioRecord permettant l'enregistrement d'entrées audio via le micro du véhicule hôte. (I5e71a)
  • Niveau d'API 5 : nouvelle API SuggestionManager permettant aux applications de fournir des suggestions à l'hôte. (I5c103)
  • Niveau d'API 5 : nouvelle API Alert permettant d'afficher des notifications contextuelles dans le NavigationTemplate. (I163a7, I5ad70)
  • Niveau d'API 5 : nouveaux composants Header et MapController facilitant la réutilisation entre les modèles. (If5826)
  • Ajout de la catégorie androidx.car.app.category.POI pour la mise en œuvre d'applications de POI. androidx.car.app.category.PARKING et androidx.car.app.category.CHARGING sont désormais obsolètes. (I59da1)

Modifications apportées à l'API

  • Niveau d'API 5 : nouvelle méthode onClick dans l'interface SurfaceCallback permettant l'interactivité des gestes sur la carte. (Ia9777)
  • Niveau d'API 5 : nouveaux indicateurs Action.FLAG_IS_PERSISTENT et Action.FLAG_DEFAULT pour décrire les composants Action. (I96318, I5ad70)
  • Niveau d'API 5 : nouvel état activé/désactivé pour les composants Action ,Row et Toggle, 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 Header viasetHeader sur PlaceListNavigationTemplate.Builder et RoutePreviewNavigationTemplate.Builder. Les méthodes setTitle et setHeaderAction sont désormais obsolètes. (I30e6a)
  • Niveau d'API 5 : nouvelle méthode setOnContentRefreshListner sur PlaceListMapTemplate.Builder et PlaceListNavigationTemplate.Builder destinée à être utilisée avec les implémentations de la nouvelle interface OnContentRefreshListner.
  • Niveau d'API 5 : nouveaux éléments setTripText et setTripIcon dans le TravelEstimate.Builder permettant de personnaliser la fiche d'estimation du temps de trajet. (Idcc6d, Ic620d)
  • Prise en charge des éléments CarIconSpan dans le titre du PaneTemplate. (Ia1ee0)
  • Prise en charge des éléments CarIconSpan dans le titre et le texte d'une Row. (Ic1e3c)
  • Les éléments ActionStrip d'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, PaneTemplate et SignInTemplate. (I2078d, Icadde)

Correction de bugs

  • Modification des règles de dimensionnement des images dans PaneTemplate afin 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_UNKNOWN par défaut, au lieu de STATUS_UNAVAILABLE. (Ic9444)
  • Vérification de l'existence de l'écran avant la création d'une surface. (Ice027a)
  • Correction d'un bug impliquant STATUS_UNIMPLEMENTED dans CarValue.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 CarSensors pour indiquer que ces éléments ne sont pas implémentés pour AAOS. (Idd57b)
  • Mise à jour de PlaceListMapTempalte.Builder#setCurrentLocationEnabled pour 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 setOnContentRefreshListener aux modèles de POI. (I6bf22)

Correction de bugs

  • Correction d'une fuite de mémoire dans CarAppService lorsque l'hôte de la voiture se dissocie. (I5c9ca, b/203594731)
  • Mise à jour du Javadoc CarAppActivity pour 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 ActionStrip sur les cartes dans PlaceListNavigationTemplate et RoutePreviewNavigateTemplate sera disponible dans les prochaines versions des plates-formes Android Auto et Android 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 CarAppPermissionActivity si 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 AutomotiveCarInfo vers 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 CarIcon définis dans un Pane. (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 PlaceListNavigationTemplate et RoutePreviewNavigationTemplate. (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 SignInTemplate et LongMessageTemplate, 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 Manager des 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 ScreenController qui prend explicitement TestCarContext. (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 CarSpan dans 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 par CarNotificationManager.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 de Desktop 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 SessionController et ScreenController en une seule méthode moveToState. (I1ed00)
  • Ajout de CarContext#getHostInfo(). (I8977e)
  • Suppression des champs obsolètes. (I67168)
  • Mise à jour de SessionController et ScreenController pour exposer directement les constructeurs. (Iabf22)
  • Suppression de PinSignInMethod.Builder et ProviderSignInMethod.Builder. (I9f0cb)
  • Ajout de "setCarAppResult()" pour permettre l'utilisation d'applications sur modèles "for result" dans AAOS. (I37741)
  • Annotation des interfaces CarHardware avec @MainThread. (Ib2f85)
  • Changement de nom : OnCarDataListener devient OnCarDataAvailableListener. (I518ca)
  • Mise à jour du nom et du Javadoc des méthodes CarInfo, Speed et Mileage. (I86672)
  • Changement de nom : Toll devient TollCard. (I3e7c8)
  • Suppression et remplacement de PinSignInMethod.getPin (obsolète) par PinSignInMethod.getPinCode. (I996ce)
  • Suppression et remplacement de OnInputCompletedListener par InputCallback. (Ib5be1)
  • Modification de PinSignInMethod afin de recevoir CharSequence au lieu de String. (I275d5)

Correction de bugs

  • Corrections du Javadoc pour le matériel du véhicule. (I2abbc)

Contribution externe

Problèmes connus

  • Dans SignInTemplate, l'utilisation de InputSignInMethod peut entraîner un NullPointerException dans 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 SignInTemplate et LongMessageTemplate, 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 *Callback comme méthodes par défaut. Changement de nom : OnRequestPermissionsCallback devient OnRequestPermissionsListener. (Ib3ec9)
  • Mise à jour des classes androidx.car.app.hardware pour supprimer les classes de compilateurs et de paramètres inutiles. (I67beb)
  • Ajout de classes androidx.car.app.hardware permettant 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 ActionStrip dans MessageTemplate. (Ida657)
  • Ajout d'setLoading à MessageTemplate. (I2a4b5)
  • Changement de nom : ConnectionToCar devient CarConnection. (Ife9bd)
  • Modification de NavigationTemplate afin de renvoyer un PanModeDelegate explicite. (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 CarNotificationManager pour prendre en charge l'envoi de notifications dans le véhicule. (I10d7a)
  • Ajout de ConstraintManager pour 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 SurfaceCallback pour les applications de navigation. (Id5e9d)
  • Élévation de CarAppApiLevel au 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 PendingIntent dans 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 Row en tant qu'actualisation. (If3f9c)
  • Transformation de androidx.activity:activity:1.2.0 en dépendance d'API. (Id1cb9)
  • Modification de SignInTemplate et LongMessageTemplate afin 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 Screen pendant 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_DESTROY sur une Session après l'exécution de ON_DESTROY sur un Screen. (I52e01, b/183696617)
  • Mise à jour du Javadoc concernant les cas où définir le temps restant d'une TravelEstimate sur une valeur inconnue est autorisé. (I99610, b/183632456)
  • Mise à jour de Action afin de prendre en charge ForegroundColorSpan dans le titre et dans les couleurs d'arrière-plan personnalisées. (I578e4)
  • Blocage de l'exécution de NavigationManagerCallback#onStopNavigation si 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 SurfaceCallback peuvent ê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 CarAppServiceController a été remplacé par le nouveau SessionController pour 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 Screen pendant le démarrage. (70aae1, b/184664896)
  • Correction d'un problème qui entraînait l'observation de ON_DESTROY sur une Session après l'exécution de ON_DESTROY sur un Screen. (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#onStopNavigation aprè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 NullPointerException déclenchée lorsque l'application recevait un appel stopNavigation aprè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

Correction de bugs

  • Correction d'un problème entraînant la réactivation du mauvais Screen lors d'un affichage séquentiel d'écrans. (b/177590791)