Guide d'intégration

Cette page explique comment intégrer des applications dégroupées. Applications qui incluent Téléphone, Multimédia et Car UI Les applications Bibliothèque et SMS sont considérées comme des applications dégroupées. Ces applications sont dissociées de la plate-forme Android. et inclure la logique de réception des données de l'application d'accompagnement du téléphone et de l'expérience utilisateur côté voiture, y compris les paramètres d'association et d'enregistrement de fonctionnalités.

Les APK créés à partir du code non groupé fonctionnent avec plusieurs versions de la plate-forme.

Consulter le code

Pour obtenir le code dégroupé:

  1. Pour ce faire, exécutez la commande suivante :
    repo init -u https://android.googlesource.com/platform/manifest -b ub-automotive-master
    repo sync -cq -j4
    
  2. Pour en savoir plus sur l'utilisation du code source AOSP, consultez Initialiser un client de dépôt

Compiler le code

Android Studio

Pour compiler le code dans Android Studio:

  1. Dans Android Studio, importez ce fichier de compilation:
    packages/apps/Car/libs/aaos-apps-gradle-project/build.gradle
  2. Veillez à définir le JDK Gradle dans Android Studio sur la version 11 au minimum:


    Figure 1 : Version 11.
  3. Compilez les APK souhaités.

Ligne de commande

Pour compiler le code à partir de la ligne de commande:

  1. Définissez l'emplacement du SDK Android de l'une des deux manières suivantes: <ph type="x-smartling-placeholder">
      </ph>
    • Créer packages/apps/Car/libs/aaos-apps-gradle-project/local.properties et puis définissez la propriété sdk.dir qu'il contient. C'est possible avec Android Studio. automatiquement à l'ouverture d'un projet. Par exemple, utilisez sdk.dir=/Users/MY-USERNAME/Library/Android/sdk

      ou
    • Définissez la variable d'environnement ANDROID_SDK_ROOT avec le chemin d'accès SDK Android.
  2. Ouvrez une invite de commande ou une fenêtre de shell.
  3. Accédez à packages/apps/Car/libs/aaos-apps-gradle-project.
  4. Exécutez la commande suivante :
    ./gradlew assemble

Niveaux d'API minimaux requis

Chaque application dégroupée fonctionne sur les plates-formes Android dont la version est supérieure ou égale à minSdkVersion Le tableau suivant indique la version minimale de l'API compatible avec chaque application:

Application Niveau d'API minimal
Agenda 29
Bibliothèque Car UI 29
Appareil associé 29
Téléphone 31
Contenus multimédias 30
SMS 30
Hôte AOSP 29

Intégrer une précompilation dans une image système

Images Android 13 ou version ultérieure

Le code dégroupé est supprimé de la plate-forme Android 13. Par conséquent, l'ajout d'APK prédéfinis aux builds de plate-forme peut être nécessaire pour:

  • Tests de conformité avec le CDD
  • Provisionner des applications privilégiées

Pour ce faire, android_app_import Règle Soong:

android_app_import {
    name: "CarMediaApp",
    apk: "CarMediaApp.apk",
    privileged: true,
    certificate: "platform", // Media must be signed by the platform
    required: ["allowed_privapp_com.android.car.media"],
}

Android 12 ou version antérieure

Si la version de la plate-forme Android est compatible avec l'application (voir le tableau ci-dessus), l'APK peut à cette image système. Cependant, la plupart des applications dégroupées ont des versions précédentes du code source incluses dans les plateformes antérieures à Android 13. Par défaut, Soong donne au code source par rapport à un code prédéfini. Il est donc nécessaire de définir l'indicateur prefer sur true dans la règle android_app_import:

android_app_import {
    name: "CarDialerApp",
    apk: "CarDialerApp.apk",
    privileged: true,
    presigned: true, // Dialer can have its own signature
    required: ["allowed_privapp_com.android.car.dialer"],
    overrides: ["Dialer"],
    prefer: true, // The prebuilt replaces a source target with the same name,
    }

Applications répertoriées en fonction de leur type sans catégorie

Application Privilégié sans catégorie Dégroupé
(ne doit pas nécessairement se trouver sur la partition système)
Signé par le système Non signé par le système
Agenda X
Appareil associé X
Téléphone X
Hôte AOSP X
Contenus multimédias X
SMS X
Mettre à jour la distribution OTA OTA ou Google Play OTA ou Google Play