13 votes

Développer AOSP avec Android Studio

J'essaie de mettre en place un environnement de développement pour faire quelques modifications personnalisées sur le code source de l'AOSP, et je voudrais utiliser Android Studio comme IDE. Après avoir effectué les étapes nécessaires, cependant, Android Studio semble ne pas être en mesure de reconnaître certaines classes et méthodes. Ai-je fait quelque chose de mal ? Voici un récapitulatif de ce que j'ai fait :

J'ai fait les préparations nécessaires (dépendances, etc.) pour cloner et construire AOSP selon la documentation officielle. Après cela, j'ai cloné la branche AOSP 7.1.1-r11 avec repo, puis j'ai exécuté les commandes suivantes :

$ source build/envsetup.sh
$ lunch aosp_arm-eng
$ make
$ mmm development/tools/idegen/
$ development/tools/idegen/idegen.sh

La fabrication m'a pris environ une heure, l'exécution du fichier idegen.sh m'a pris environ 5 secondes.

Le fichier idegen.sh a généré un fichier Android.ipr que j'ai importé avec succès dans Android Studio. Lorsqu'on m'a demandé de sélectionner un SDK, j'ai choisi openjdk 1.8.0_121 et j'ai supprimé toutes les bibliothèques dans le classpath, comme indiqué dans le fichier readme d'idegen.

Après avoir laissé Android Studio exécuter les actions d'importation initiales, je suis allé de l'avant et j'ai ouvert le PhoneFactory.java du cadre de téléphonie où je veux faire mes modifications. C'est ici que j'ai mon problème : plusieurs dizaines de méthodes sont en rouge (ne peuvent être résolues).

Je suis sûr qu'il n'y a aucun problème avec la façon dont j'ai cloné AOSP, car le make passe correctement. Avez-vous des idées ?

9voto

Olaia Points 1312

J'utilise toujours ces étapes sans le moindre problème :

https://shuhaowu.com/blog/setting_up_intellij_with_aosp_development.html

Les pièces les plus importantes pour votre problème sont :

  • Définir le SDK sans bibliothèques
  • Dans la structure du projet -> Module -> Supprimez toutes les dépendances qui se terminent par un .jar.
  • En bonus : allez dans l'onglet Sources et naviguez jusqu'à out/target/common/R. Faites un clic droit dessus et cliquez sur Source

Dans le lien, vous pouvez voir des captures d'écran qui peuvent rendre les étapes plus faciles à suivre.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X