Comment utiliser aapt2, où est la documentation?
J'ai utilisé aapt p
de package de ressources et de générer des R.java
.
Mais quand je l'ai mis à niveau vers Android 24, j'ai trouvé aapt2.exe
.
Dois-je utiliser aapt2.exe
? Comment puis-je l'utiliser? Je ne pouvais pas trouver toute la documentation à ce sujet.
source d'informationauteur chenie
Vous devez vous connecter pour publier un commentaire.
Il y a beaucoup de différences entre la façon dont les AAPT et AAPT2 travail.
Compiler et lier
L'idée principale derrière AAPT2, à part les nouvelles fonctionnalités, c'est qu'il divise le 'package' étape en deux: les "compiler" et de "lien". Il améliore les performances, car si un seul des modifications de fichiers, vous avez seulement besoin de recompiler le fichier et le lien de tous les fichiers intermédiaires avec le lien de commande.
Plus restrictive
AAPT2 essaie d'attraper le plus de bugs dès que possible. C'est pourquoi lors de la commutation de AAPT à AAPT2 vous risquez de rencontrer beaucoup d'erreurs indiquant que certains éléments sont imbriqués de manière incorrecte ou que certaines références sont incorrectes. Pour plus d'info sur la nouvelle restriction regarder Android Studio 3.0 documentation.
Utilisation
Android Studio 3.0 est livré avec AAPT2 activé par défaut (avec Android Plugin Gradle 3.0.0). Mais si vous souhaitez utiliser AAPT2 dans votre propre script, vous aurez besoin de changer la façon dont vous traitez vos ressources.
Pour le "package" de commande avec AAPT vous voulez passer le répertoire des ressources avec l'option-S. Avec AAPT2 vous avez besoin de compiler chaque ressource d'abord avec la " commande compile et seulement ensuite passer tous les fichiers compilés avec l'option-R du pavillon.
Par exemple:
Au lieu d'utilisation:
Drapeaux
Il y a plus de différences dans le pavillon de l'utilisation, par exemple les deux '--pseudo-localiser " et "--no-crunch " drapeaux sont utilisés par fichier lors de la 'compiler' étape. Pour des informations complètes sur AAPT2 indicateurs type:
C'est (en Février 2018) assez mal documenté. Les auteurs de l'Overlay Service Gestionnaire Android O présenté leur travail récemment et parler AAPT2 dans leurs diapositives (voir les diapositives de 12 à 14 pour le contexte).
Aussi, en cas de doute, regardez le code source: https://android.googlesource.com/platform/frameworks/base/+/android-7.0.0_r7/outils/aapt2.