Cette page explique comment installer la bibliothèque Car App et configurer le fichier manifeste de votre application.
Installer la bibliothèque Car App
Pour ajouter la bibliothèque à votre application, consultez la page de publication de la bibliothèque Jetpack.
Configurer les fichiers manifestes de votre application
Avant de pouvoir créer votre application automobile, vous devez configurer les fichiers manifestes de votre application.
Déclarer votre CarAppService
L'hôte se connecte à votre application via votre implémentation CarAppService.
Vous déclarez ce service dans votre fichier manifeste pour permettre à l'hôte de découvrir votre application et de s'y connecter.
Vous devez également déclarer la catégorie de votre application dans l'élément <category> du filtre d'intent de votre application. Pour connaître les valeurs autorisées pour cet élément, consultez la liste des catégories d'applications compatibles.
L'extrait de code suivant montre comment déclarer un service d'application automobile pour une application de points d'intérêt dans votre fichier manifeste :
<application>
...
<service
...
android:name=".MyCarAppService"
android:exported="true">
<intent-filter>
<action android:name="androidx.car.app.CarAppService"/>
<category android:name="androidx.car.app.category.POI"/>
</intent-filter>
</service>
...
<application>
Catégories d'applications compatibles
Lorsque vous déclarez votre CarAppService comme décrit dans Déclarer votre CarAppService, vous devez également déclarer la catégorie de votre application en ajoutant une ou plusieurs de ces valeurs dans le filtre d'intent.
androidx.car.app.category.NAVIGATION: fournit des instructions de navigation détaillée. Consultez Créer des applications de navigation pour voitures.androidx.car.app.category.POI: fournit des fonctionnalités permettant de trouver des points d'intérêt tels que des places de parking, des bornes de recharge et des stations-service. Consultez Créer des applications de point d'intérêt pour voitures.androidx.car.app.category.IOT: permet aux utilisateurs d'effectuer des actions pertinentes sur des appareils connectés depuis leur voiture. Consultez Développer des applications IoT (Internet des objets) pour voitures.androidx.car.app.category.WEATHER: permet aux utilisateurs de consulter des informations météo pertinentes concernant leur position actuelle ou leur itinéraire. Consultez Créer des applications météo pour voitures.androidx.car.app.category.MEDIA: permet aux utilisateurs de parcourir et de lire de la musique, des radios, des livres audio et d'autres contenus audio dans la voiture. Consultez Créer des applications multimédias basées sur des modèles pour voitures.androidx.car.app.category.MESSAGING: permet aux utilisateurs de communiquer avec des messages textuels courts. Consultez Créer des expériences de messagerie basées sur des modèles pour Android Auto.androidx.car.app.category.CALLING: permet aux utilisateurs de communiquer par appel vocal. Consultez Créer des expériences d'appel pour Android Auto.
Pour obtenir des descriptions détaillées de chaque catégorie et des critères requis pour y être éligible, consultez Qualité des applications Android pour les voitures.
Spécifier le nom et l'icône de l'application
Pour représenter votre application dans l'UI du système, carPermissionActivityLayout doit spécifier un nom d'application et une icône pour l'hôte. Utilisez les attributs label et icon de votre CarAppService pour spécifier le nom et l'icône de l'application utilisés par l'hôte pour représenter votre application :
...
<service
android:name=".MyCarAppService"
android:exported="true"
android:label="@string/my_app_name"
android:icon="@drawable/my_app_icon">
...
</service>
...
Si vous ne déclarez pas de libellé ni d'icône dans l'élément <service>, l'hôte revient aux valeurs spécifiées par l'élément <application>.
Définir un thème personnalisé
Pour définir un thème personnalisé pour votre application automobile :
Ajoutez un élément
<meta-data>dans votre fichier manifeste :<meta-data android:name="androidx.car.app.theme" android:resource="@style/MyCarAppTheme />Déclarez votre ressource de style pour définir les attributs de votre thème d'application automobile personnalisée :
<resources> <style name="MyCarAppTheme"> <item name="carColorPrimary">@color/my_primary_car_color</item> <item name="carColorPrimaryDark">@color/my_primary_dark_car_color</item> <item name="carColorSecondary">@color/my_secondary_car_color</item> <item name="carColorSecondaryDark">@color/my_secondary_dark_car_color</item> <item name="carPermissionActivityLayout">@layout/my_custom_background</item> </style> </resources>