Android Studio for Platform (ASfP) est l'environnement de développement intégré (IDE) recommandé pour développer la plate-forme Android, y compris les projets de véhicules définis par logiciel (SDV) du système d'exploitation Android Automotive (AAOS). ASfP fournit un ensemble complet d'outils pour l'édition, la compilation, le débogage et le test de code, y compris :
- Assistance optimisée par l'IA (Gemini)
- Prise en charge des langages Rust, C, C++ et Java
- Intégrations utiles pour le développement de SDV AAOS (par exemple, prise en charge de l'émulateur Cuttlefish et du langage VSIDL)
Installer Android Studio for Platform
Pour installer ASfP :
Téléchargez Android Studio for Platform.
Choisissez la version qui correspond le mieux à vos besoins :
- Stable : dernière version de production, recommandée pour la plupart des utilisateurs
- Canary : versions en accès anticipé avec les dernières fonctionnalités, mais potentiellement moins stables
Suivez les instructions d'installation fournies sur la page de téléchargement.
Configurer un projet SDV AAOS
Pour configurer un projet SDV AAOS :
Vérifiez que vous avez accès au dépôt de code source SDV AAOS, et que vous avez initialisé et synchronisé votre extraction locale. Pour en savoir plus sur l'accès à la source et l'initialisation du dépôt, consultez Télécharger, compiler et exécuter.
Lancez Android Studio for Platform.
Si vous utilisez l'application pour la première fois, suivez l'assistant de configuration pour personnaliser l'environnement de développement.
Créez un projet :
- Si aucun projet n'est ouvert, cliquez sur New (Nouveau) sur l'écran d'accueil.
- Si un projet est déjà ouvert, cliquez sur Open (Ouvrir) ou sélectionnez ASfP > Project > Import ASfP Project (ASfP > Projet > Importer un projet ASfP) dans le menu.
Renseignez les informations de configuration du projet dans l'assistant :
Repo checkout (Extraction du dépôt) : spécifiez le chemin absolu vers la racine de votre extraction locale du code source SDV AAOS (par exemple,
/path/to/sdv_source).lunch target (Cible de lancement) : saisissez la cible de lancement appropriée pour le développement de SDV AAOS sur Cuttlefish, par exemple,
sdv_core_cf-trunk_staging-userdebug. Pour connaître les autres cibles disponibles, consultez Choisir une cible pour plus de cibles disponibles.Project sources (Sources du projet) : listez les répertoires ou modules initiaux que vous souhaitez inclure dans votre projet, ou cliquez sur l'icône de dossier pour ouvrir l'explorateur de système de fichiers et sélectionner les répertoires. Si vous sélectionnez trop de répertoires ou de modules, cela affecte l'indexation et les performances de recherche de l'IDE. N'incluez donc que les répertoires ou modules pertinents.
Language support (Prise en charge des langues) : sélectionnez Rust et C++ comme langues compatibles.
Project name (Nom du projet) : donnez un nom descriptif à votre projet.
Finish setup (Terminer la configuration) : cliquez sur Finish (Terminer). ASfP crée la structure du projet et le fichier de configuration
.asfp-project.
ASfP démarre automatiquement un processus de synchronisation initiale. ASfP analyse votre code source, résout les dépendances à l'aide du système de compilation Soong et crée les informations nécessaires aux fonctionnalités d'intelligence du code. Cela peut prendre beaucoup de temps, en particulier pour la première synchronisation.
Personnaliser le projet
Le fichier .asfp-project à la racine de votre projet permet une personnalisation plus poussée.
Vous pouvez modifier ce fichier pour :
- ajouter ou supprimer des répertoires et des modules ;
- activer la prise en charge d'autres langages, tels que C++ ou Rust (Java et Kotlin sont définis par défaut) ;
- configurer des options de compilation.
Pour apporter des modifications au fichier de configuration, sélectionnez ASfP > Project > Open Config (ASfP > Projet > Ouvrir la configuration). Pour connaître les options de configuration disponibles, consultez Présentation des projets.
Déboguer et tester
Pour déboguer et tester du code dans ASfP, consultez Déboguer le code de la plate-forme et Tester le code de la plate-forme avec atest.
Intégrations disponibles
ASfP est fourni avec des intégrations utiles pour le développement de SDV AAOS, y compris la prise en charge de Cuttlefish et du protocole LSP (Language Server Protocol) dans VSIDL.
Plug-in Cuttlefish
Le plug-in Cuttlefish permet aux utilisateurs de créer et d'exécuter des appareils Cuttlefish locaux directement depuis ASfP.
Installer le plug-in
Le plug-in Cuttlefish est préinstallé avec ASfP et ne nécessite aucune configuration. Le plug-in nécessite que les outils Cuttlefish soient installés sur l'appareil. Si nécessaire, suivez les instructions pour installer les outils Cuttlefish.
Créer un appareil Cuttlefish
Pour créer un appareil :
Ouvrez la fenêtre d'outil Device Manager (Gestionnaire d'appareils) en sélectionnant Tools > Device Manager (Outils > Gestionnaire d'appareils) ou en cliquant sur l'icône Running Devices (Appareils en cours d'exécution) dans le panneau de droite si le gestionnaire d'appareils y est déjà épinglé.
Cliquez sur l'icône + , puis sélectionnez Create Cuttlefish Device (Créer un appareil Cuttlefish).
Configurez le nouvel appareil Cuttlefish. Vous pouvez créer des appareils Cuttlefish de deux manières :
À partir de l'extraction locale de l'arborescence source Android :
- Sélectionnez le chemin d'accès à la cible compilée qui correspond à votre configuration de lancement (pour en savoir plus, consultez Choisir une cible).
- Sélectionnez le chemin d'accès à l'hôte.
- Vous pouvez également sélectionner les configurations d'appareil disponibles ou None (Aucune) pour la configuration par défaut.
À partir de la configuration canonique (utilisez cette option pour créer plusieurs appareils à partir d'une seule configuration) :
- Sélectionnez le chemin d'accès à la configuration de l'appareil.
- Vous pouvez également fournir des options de remplacement pour remplacer les options de configuration.
Attendez que l'appareil Cuttlefish soit créé et ajouté à la liste des appareils en cours d'exécution dans le gestionnaire d'appareils.
Sélectionnez l'appareil Cuttlefish dans le menu Running Devices (Appareils en cours d'exécution).
Vous pouvez démarrer ou arrêter des appareils Cuttlefish individuels en cliquant sur l'icône d'arrêt ou de démarrage à côté de l'appareil dans le gestionnaire d'appareils.
Accéder à la page de l'appareil Cuttlefish
Le plug-in Cuttlefish dispose d'une fenêtre d'outil qui affiche la page Cuttlefish Device (Appareil Cuttlefish), où vous pouvez accéder aux fonctionnalités de duplication d'écran.
Pour ouvrir la fenêtre d'outil Cuttlefish, cliquez sur l'icône ... dans le panneau de gauche, puis sélectionnez Cuttlefish. Vous pouvez également rechercher Cuttlefish dans l'élément de menu Help > Find Action (Aide > Rechercher une action).
Protocole LSP dans VSIDL
Dans VSIDL, le protocole LSP fournit un ensemble complet de fonctionnalités d'IDE pour améliorer votre workflow de développement lorsque vous travaillez avec des fichiers VSIDL (avec une extension .vsidl) dans ASfP.
Coloration syntaxique sémantique
Le serveur LSP fournit une coloration syntaxique pour les fichiers VSIDL.
Fonctionnalité : met en surbrillance les mots clés (
service_bundle,publisher), les champs (package:,message:) et les littéraux.Comment essayer : ouvrez n'importe quel fichier VSIDL. Le fichier est codé par couleur pour distinguer les mots clés structurels des identifiants définis par l'utilisateur.
Diagnostics en direct (erreurs et avertissements)
Le serveur LSP valide en permanence les fichiers et signale les problèmes en temps réel.
Fonctionnalité : détecte les erreurs de syntaxe, les références de type non valides et d'autres erreurs dans l'ensemble du catalogue et de ses dépendances.
Comment essayer : introduisez une faute de frappe dans un nom de message (par exemple,
TiiirePressure). Une ligne ondulée rouge apparaît sous la faute d'orthographe. Pointez sur le mot pour afficher le message d'erreur ou consultez la liste complète dans la fenêtre d'outil Problems (Problèmes) en bas de l'IDE.
Navigation et intelligence
Vous pouvez utiliser les fonctionnalités de navigation et d'intelligence pour explorer les relations entre les différentes parties de votre catalogue VSIDL.
Saisie semi-automatique : appuyez sur Ctrl+Espace pour afficher des suggestions de mots clés, de messages protobuf, de services RPC, de sujets et de canaux. Les suggestions de mots clés incluent des explications courtes et utiles de leur objectif directement dans le menu de saisie semi-automatique. Le protocole LSP fournit également des extraits intelligents pour les blocs tels que
publisherouserverafin d'accélérer votre workflow.Accéder à une définition : maintenez la touche Ctrl enfoncée et cliquez (ou appuyez sur Ctrl+B) sur une référence de message, de service, de sujet ou de canal pour accéder directement à sa définition source, même si elle se trouve dans un autre fichier VSIDL ou protobuf.
Rechercher des références : placez votre curseur sur le mot clé
publisher,subscriber,serverouclient, puis appuyez sur Alt+Maj+F7 pour trouver toutes les occurrences.Informations au survol : déplacez votre curseur sur un type ou une propriété (ou appuyez sur Ctrl+Q). Une info-bulle s'affiche et indique les commentaires de documentation (le cas échéant).
Fonctionnalités structurelles
Le serveur LSP vous aide à gérer et à parcourir la structure des fichiers VSIDL volumineux :
Symboles de document (plan) : appuyez sur Ctrl+F12 pour afficher une info-bulle de navigation rapide ou ouvrez la fenêtre d'outil Structure (Ctrl+Alt+7) pour afficher une arborescence de tous les bundles et unités du fichier.
Plages de pliage : cliquez sur les icônes > ou V dans la marge (à côté des numéros de ligne) pour réduire ou développer des blocs logiques volumineux tels que
service_bundleou des définitions de mappage.Mise en forme du document : appuyez sur Ctrl+Alt+L pour reformater automatiquement le fichier, en créant une indentation et un espacement cohérents.