Android Studio for Platform (ASfP) est l'IDE officiel pour le développement de la plate-forme Android. Cette page récapitule les dernières fonctionnalités, les améliorations spécifiques à la plate-forme et les améliorations de la qualité disponibles dans ASfP.
Fonctionnalités de la plate-forme 2026 (Rabbit | 2026.2 et Panda 2 | 2025.3.2)
Basées sur la plate-forme IntelliJ 2026.2 , les dernières versions d'ASfP apportent des améliorations majeures à la configuration du projet et à la fiabilité du démarrage, à l'intégration de la compilation Soong, aux fonctionnalités de l'agent IA, à la gestion des appareils virtuels Cuttlefish, au débogage hybride, C, C++ et Rust, ainsi qu'aux tests de la plate-forme.
Configuration du projet, modèles et performances de synchronisation
- Architecture de projet du modèle d'espace de travail : la construction du projet a été migrée vers les API du modèle d'espace de travail IntelliJ, ce qui simplifie la configuration initiale du projet et améliore la stabilité de l'IDE sur les grands arborescences sources AOSP.
- Démarrage instantané avec des instantanés du modèle de projet : ASfP met désormais en cache et restaure votre modèle de projet à partir d'instantanés au démarrage, ce qui élimine les délais d'indexation initiaux redondants lors de la réouverture de grands espaces de travail AOSP.
- Modèles de projet partageables (importation et exportation):
- Importer à partir d'un modèle : amorcez un nouveau projet AOSP dans l'assistant
de configuration en sélectionnant Importer à partir d'un modèle et en pointant vers un fichier YAML partagé
.asfp-project. - Exporter vers un modèle : partagez la configuration de votre projet avec vos coéquipiers
en effectuant un clic droit sur l'onglet de l'éditeur
.asfp-project(ou dans le menu ASfP > Projet), puis en sélectionnant Export to Template (Exporter vers un modèle).
- Importer à partir d'un modèle : amorcez un nouveau projet AOSP dans l'assistant
de configuration en sélectionnant Importer à partir d'un modèle et en pointant vers un fichier YAML partagé
- Options améliorées de l'assistant de configuration : configurez des variables d'environnement de compilation personnalisées et activez Soong Partial Compile (
SOONG_PARTIAL_COMPILE) directement lors de la création du projet. - Modes de synchronisation flexibles:
- Synchronisation partielle : synchronisez des modules ou des répertoires spécifiques sans exécuter une synchronisation complète du dépôt.
- Synchronisation sans compilation : actualisez rapidement la structure du projet IDE et les racines du module sans déclencher de compilation Soong.
- Synchronisation et compilation complète : déclenchez une synchronisation combinée du projet et une compilation Soong complète en une seule action.
- Champs de recherche optimisés et prise en charge des liens symboliques : le contenu du répertoire
out/et les IMLgengénérés sont automatiquement exclus des champs de recherche du projet pour que les recherches de fichiers et de symboles soient rapides et sans bruit. ASfP est également compatible avec les racines sources liées symboliquement dans les dépôts AOSP.
Compilation, déploiement et intelligence de l'éditeur Android.bp dans l'éditeur
- Icônes de gouttière de compilation, d'exécution et de débogage dans
Android.bp: chaque module nommé dansAndroid.bpinclut une icône de gouttière Build (Compiler) à côté dename:, tandis que les modules de test (*_testet*_test_host) et les modulesandroid_appincluent une icône de gouttière Run (Exécuter) pour exécuter ou déboguer des cibles directement à partir de l'éditeur. - Configurations d'exécution de déploiement et de flash contextuelles : créez et lancez
Soong Deploy des configurations d'exécution à partir de cibles déployables dans des fichiers
Android.bp, en prenant en charge le déploiement viaadb, des scripts shell personnalisés,adevice, ouflashallavec des hooks de compilation Soong avant l'exécution. - Ouvrir le fichier Android.bp correspondant et intelligence de l'éditeur : effectuez un clic droit
sur un fichier source ou un répertoire, puis sélectionnez Open Corresponding Android.bp
File (Ouvrir le fichier Android.bp correspondant) pour accéder à sa déclaration de module (résolution des chaînes
defaults, des globs et des liens symboliques). DansAndroid.bp, Ctrl+clic sur les références de module ousrcs, affichez les conseils d'insertionN Usagescliquables et maintenez le pointeur sur les propriétés (y compris les propriétéstarget.*,arch.*etmultilib.*limitées) pour obtenir la documentation Soong intégrée. - Fenêtre d'outil Soong dédiée : surveillez la synchronisation et la progression de la compilation Soong avec des indicateurs d'état des tâches, déclenchez des actions de compilation et exécutez des commandes Soong à partir de la fenêtre d'outil Soong.
Gestion des appareils virtuels Cuttlefish et mise en miroir multi-écrans
- Configuration multi-appareils dans le gestionnaire d'appareils : créez et gérez des configurations d'appareils virtuels Cuttlefish multi-appareils directement dans le gestionnaire d'appareils à l'aide de votre extraction AOSP locale.
- Mise en miroir de l'affichage multi-écrans dans la fenêtre d'outil Cuttlefish : utilisez la mise en miroir de l'affichage multi-écrans Cuttlefish intégrée dans la fenêtre d'outil Cuttlefish dédiée, conçue pour le développement multi-écrans d'Android Automotive OS (AAOS) et de véhicules définis par logiciel (SDV).
IA dans Android Studio et agent intégré pour le développement de la plate-forme
- Agent intégré avec outils de compilation et de test Soong : AI in Android Studio
intègre des outils de compilation Soong et d'exécution
atestspécifiques à la plate-forme dans l'agent intégré, ce qui permet à l'agent de planifier des modifications en plusieurs étapes, de compiler des cibles Soong et d'exécuter des tests de plate-formeatestavec des résultats structurés intégrés. - Prise en charge des entreprises et de BYOM : accédez à AI in Android Studio (IA dans Android Studio) à l'aide des modèles Gemini intégrés, de Gemini Code Assist, des licences Gemini Enterprise ou connectez des points de terminaison de modèle personnalisés à l'aide de Bring Your Own Model (BYOM) (Apportez votre propre modèle) avec vos propres clés API.
Débogage de la plate-forme (onglet "Attach" [Associer] dans la fenêtre d'outil "Debug" [Déboguer] et LLDB)
- Onglet "Attach" (Associer) épinglé (Run > Attach to Android Process [Exécuter > Associer au processus Android]) :
- Bibliothèques partagées chargées (Libraries [Bibliothèques]), ID de compilation et symboles : inspectez les bibliothèques
.sochargées et les ID de compilation ELF à huit caractères avant de les associer. ASfP fait correspondre chaque ID de compilation àout/target/product/<device>/symbols(indexsymbols/.build-id), en affichant une icône de coche une fois la validation effectuée (maintenez le pointeur sur une ligne validée pour afficher le chemin.debugrésolu) ou une icône d'avertissement si des symboles sont manquants. - Association Java, C++ et Rust : sélectionnez Java debugger (Débogueur Java), Native
debugger (Débogueur natif) ou les deux pour ouvrir les onglets de débogage
<process> (<pid>)et<process> (<pid>)-jdwpliés. Si vous sélectionnez un service C++ ou Rust, Java debugger (Débogueur Java) est masqué et Java debugging unavailable, not a Java process. (Débogage Java non disponible, il ne s'agit pas d'un processus Java) s'affiche. - Appareil en mode root en un clic et activer JDWP : filtrez avec Afficher les processus système, cliquez sur Appareil en mode root pour exécuter
adb root(L'appareil est en mode root) ou cliquez sur Activer JDWP pour définirpersist.debug.dalvik.vm.jdwp.enabled=1et redémarrer les appareilsuserdebug.
- Bibliothèques partagées chargées (Libraries [Bibliothèques]), ID de compilation et symboles : inspectez les bibliothèques
- Améliorations du débogueur LLDB, visualisateurs Rust et transfert de signal ART:
- Les sessions
lldb-dapintégrées sont compatibles avec les points d'arrêt conditionnels, les points d'arrêt d'exception C++ et Rust, les valeurs de variables intégrées dans l'éditeur, Drop Frame (Supprimer le frame), Step Into (Pas à pas détaillé) intelligent et les jolis-imprimeurs Rust automatiques (String,Vec,HashMap,Option) à partir des précompilations AOSP. - L'association de LLDB aux processus ART et JNI transmet automatiquement les signaux de vérification de valeur nulle ou GC
SIGSEGVetSIGBUSART internes sans arrêt parasite. rust-analyzerest détecté automatiquement à partir deprebuilts/rust-toolchain/linux-x86/stable/rust-analyzer(avec repli surprebuilts/rust/linux-x86/stable/rust-analyzer), et les notifications parasites'proc-macro' not foundsur les fichiersout/soong/.intermediatesgénérés sont supprimées.
- Les sessions
Test de la plate-forme et débogage de cc_test et rust_test
- Déboguer les cibles
android_test,cc_testetrust_test: lancez des sessions de débogage à partir d'icônes de gouttière de méthodeAndroid.bpou de test :- Les modules
android_testse lancent à l'aide deatest --wait-for-debuggeret associent le débogueur Java. cc_test,cc_test_host,rust_testetrust_test_hostmodules se lancent directement sous LLDB intégré à l'aide de Build Native Test Module et Deploy with atest (atest --collect-tests-only --disable-teardown) avant le lancement des tâches.
- Les modules
- Modèles LLDB à double cible
host_supported: trueet par machine : pour les modulescc_testetrust_testavechost_supported: true, les cases d'option Run on: Device (Exécuter sur l'appareil) et Host (Hôte) sont activées dans les configurations Soong Test avec des cartes de paramètres LLDB indépendantes par cible, des Program arguments (arguments de programme), des atest arguments (arguments atest) et un Launch JSON (JSON de lancement) (DAP Settings [Paramètres DAP]).
Mises à jour dans l'IDE et qualité de la plate-forme
- Notifications de mise à jour automatiques dans l'IDE : à partir d'ASfP 2026.2.2
Canary 1, ASfP recherche automatiquement les nouvelles versions en arrière-plan et
vous en informe dans l'IDE via la boîte de dialogue Android Studio and Plugin Updates
(Mises à jour d'Android Studio et des plug-ins), avec un bouton Download (Télécharger) pour le dernier package
.debet les instructions d'installation du terminal. Recherchez des mises à jour à tout moment à l'aide de Help > Check for Updates (Aide > Rechercher des mises à jour). - Liens de canal
-current-linux.debpersistants : pour les scripts automatisés et les configurations de ligne de commande, les derniers packages Stable et Canary sont accessibles via des URL persistantes :https://dl.google.com/android/asfp/asfp-current-linux.deb(Stable) ethttps://dl.google.com/android/asfp/asfp-canary-current-linux.deb(Canary). - Détection des différences de version sur le disque : ASfP détecte lorsque l'installation
.debsous-jacente sur le disque a été mise à jour pendant l'exécution de l'IDE et vous invite à redémarrer proprement. - Inspections par défaut des droits d'auteur et des commits AOSP : inclut un profil d'en-tête de droits d'auteur AOSP par défaut préconfiguré et des inspections de mise en forme des messages de commit adaptés aux contributions de la plate-forme.
- Allocation de mémoire par défaut accrue : la taille maximale du tas par défaut a été augmentée de 20 Go à 30 Go pour prendre en charge les grandes arborescences sources AOSP.