Je migre de Action Bar Sherlock vers Action Bar compat. J'ai enlevé ABS et j'avais support-v4-google maps, j'ai eu des erreurs. Je vais maintenant ajouter la v4 directement au projet pour voir si le problème est résolu, mais je veux savoir:
Je ne comprends pas vraiment dans la documentation si les bibliothèques sont redondantes ou complémentaires.
Merci pour les conseils, les pointeurs, etc.
EDIT: C’est l’erreur qui me fait ajouter la v4 avec "jar externe ..." Elle le résout.
The type Android.support.v4.app.TaskStackBuilder$SupportParentable cannot be resolved.
It is indirectly referenced from required .class files
Mais si vous dites que je ne devrais pas ajouter la v4 si vous avez déjà la v7, comment puis-je l'expliquer à Eclipse?
Poste pertinent, la solution consistait à ajouter la v4 ici. La hiérarchie du type activité est incohérente lors de l'extension de ActionBarActivity
Édition 2: le fichier jar v4 est inclus dans le projet de bibliothèque v7 si cette opération est effectuée comme suit: http://developer.Android.com/tools/support-library/setup.html#add-library . Ma configuration est la suivante:
v7 inclut la bibliothèque de support v4, il n’est donc pas nécessaire de l’avoir là encore
si vous regardez dans le dossier libs
de la bibliothèque de support de la v7, vous verrez que le jar v4 est déjà référencé dans la bibliothèque.
V7 est la nouvelle version de la bibliothèque de prise en charge Android, une nouveauté mise en œuvre dans la bibliothèque de prise en charge V7 of V4. Ainsi, toutes les méthodes et classes de v4 sont disponibles dans la v7.
Donc, si vous ajoutez la bibliothèque v7, inutile d'ajouter la bibliothèque v4.
Si vous utilisez Android Studio, la bibliothèque de prise en charge de la v7 est par défaut incluse dans les dépendances maven définies dans votre fichier build.gradle.
dependencies {
compile 'com.Android.support:appcompat-v7:18.0.0'
}
Le fichier .car appcompat-v7 ne contient PAS les classes v4. Vous pouvez le voir en consultant votre dossier build/exploded-bundles/ComAndroidSupportAppcompatV71800.aar. Ce que j’ai trouvé, c’est que si vous créez un nouveau projet, il inclura également le fichier .jar pour la v4 à partir du dossier SDK.
Dans mon cas (Eclipse), cela dépend du jar v4 et v7 que vous importez dans votre projet.
Ma suggestion est d'utiliser à la fois le fichier jar présent dans ce dossier:
Dans mon cas, «Android-support-v7-appcompat.jar» ne suffisait pas lorsque j'ai utilisé public class MainActivity extends AppCompatActivity
dans Eclipse. J'avais besoin d'ajouter aussi Android-support-v4.jar
(Chemin de construction -> Bibliothèques -> Ajouter des JAR). Alors seulement AppCompatActivity
a été accepté.