web-dev-qa-db-fra.com

le package Android.support.v4.app n'existe pas; dans le studio Android 0.8

J'ai récemment mis à jour le studio Android IDE à 0.8 pour qu'il fonctionne avec le nouveau SDK Android L. Pour commencer, j'ai importé un projet Android fini qui ne reçoit aucune erreur dans l'ancienne version du studio Android. Dans la version 0.8, des lignes telles que

import Android.support.v4.app.Fragment;
get: le support ne peut pas être résolu, ce qui entraîne des erreurs dans le reste du code. Le logcat retourne 101 instances de 

Error:(8, 30) error: package Android.support.v4.app does not exist

1 pour chaque fois que j'appelle la bibliothèque de support dans une instruction d'importation.

J'ai essayé

  • réinstaller l'IDE
  • supprimer le contenu du dossier d'idées
  • réinstaller tous les kits de développement (SDK), y compris les bibliothèques de support 
  • synchroniser le grade
  • copier manuellement la bibliothèque de support dans le dossier libs
  • reconstruire le projet 
  • ainsi que la création d'un nouveau projet pour tester la bibliothèque 

pas tout à fait sûr de ce qu'il reste à faire.

39
user3381665

[pour certaines raisons, cette réponse est liée à Eclipse, PAS à Android Studio!]

Avez-vous essayé de définir les bibliothèques de support sur votre chemin de classe? Ce lien du site Web du développeur Android contient des informations sur la procédure à suivre.

Essayez de suivre ces étapes à partir du site Web:

Créez un projet de bibliothèque basé sur le code de la bibliothèque de support:

  • Assurez-vous d'avoir téléchargé la bibliothèque de support Android à l'aide du SDK Manager.
  • Créez un projet de bibliothèque et assurez-vous que les fichiers JAR requis sont inclus dans le chemin de génération du projet:

    • Sélectionnez Fichier> Importer.
    • Sélectionnez Existing Code Android dans l'espace de travail et cliquez sur Suivant.
    • Accédez au répertoire d'installation du SDK, puis au dossier Support Library. Par exemple, si vous ajoutez le projet appcompat, accédez à/extras/Android/support/v7/appcompat /.
    • Cliquez sur Terminer pour importer le projet. Pour le projet v7 appcompat, vous devriez maintenant voir un nouveau projet intitulé Android-support-v7-appcompat.
    • Dans le nouveau projet de bibliothèque, développez le dossier libs/, cliquez avec le bouton droit de la souris sur chaque fichier .jar et sélectionnez Chemin de construction> Ajouter au chemin de construction. Par exemple, lors de la création du projet v7 appcompat, ajoutez les fichiers Android-support-v4.jar et Android-support-v7-appcompat.jar au chemin de génération.
    • Cliquez avec le bouton droit sur le dossier du projet de bibliothèque et sélectionnez Chemin de construction> Configurer le chemin de construction.
    • Dans l'onglet Order and Export, vérifiez les fichiers .jar que vous venez d'ajouter au chemin de génération, afin qu'ils soient disponibles pour les projets qui dépendent de ce projet de bibliothèque. Par exemple, le projet appcompat nécessite que vous exportiez les fichiers Android-support-v4.jar et Android-support-v7-appcompat.jar.
    • Décochez la case Dépendances Android.
    • Cliquez sur OK pour terminer les modifications.
  • Vous avez maintenant un projet de bibliothèque pour la bibliothèque de support sélectionnée que vous pouvez utiliser avec un ou plusieurs projets d'application.

    • Ajoutez la bibliothèque à votre projet d'application:
    • Dans l'explorateur de projets , cliquez avec le bouton droit de la souris sur votre projet et sélectionnez Propriétés.
    • Dans le panneau de catégorie situé à gauche de la boîte de dialogue, sélectionnez Android.
    • Dans le volet Bibliothèque, cliquez sur le bouton Ajouter.
    • Sélectionnez le projet de bibliothèque et cliquez sur OK. Par exemple, le projet appcompat doit être répertorié sous Android-support-v7-appcompat.
    • Dans la fenêtre des propriétés, cliquez sur OK.
7
user3799575

Ok, alors j'ai eu le même problème et j'ai trouvé une solution dans un forum udacity:

Dans Android Studio:

  1. Faites un clic droit sur le dossier "app" de vos projets et cliquez sur -> paramètres du module
  2. Cliquez sur l'onglet "dépendances"
  3. Cliquez sur le signe + pour ajouter une nouvelle dépendance et sélectionnez "Dépendance de la bibliothèque".
  4. Cherchez la bibliothèque dont vous avez besoin et ajoutez-la
103
Bernhardt Scherer

La réponse de @boernard résout ce problème depuis l'EDI Android Studio, mais si vous voulez comprendre ce qui se passe sous la couverture, il s'agit d'une simple mise à jour du fichier de construction:

Vous pouvez modifier le fichier build.gradle à partir de IDE (volet de gauche: Gradle Scripts -> build.gradle (Module: app)) ou utiliser le chemin brut (<proj_dir>/app/build.gradle) Et ajouter/mettre à jour la section de dépendance suivante:

dependencies {
    //
    // IDE setting pulls in the specific version of v4 support you have installed:
    //
    //compile 'com.Android.support:support-v4:21.0.3'

    //
    // generic directive pulls in any available version of v4 support:
    //
    compile 'com.Android.support:support-v4:+'
}

L'utilisation de la directive generic compile ci-dessus vous permet d'expédier votre code à n'importe qui, à condition qu'un certain niveau du Android Support Libraries v4 soit installé.

30
colminator

Effacer

/.idea/libraries

Ensuite, synchronisez gradle pour construire le projet.

5
Praveen

tl; dr Supprimez tous les modules inutilisés dépendant de la bibliothèque de support de votre settings.gradle.

Version longue:

Dans notre cas, nous avions déclaré la bibliothèque de support comme étant une dépendance pour tous nos modules (un module d'application et plusieurs modules de bibliothèque) dans un fichier common.gradle qui est importé par chaque module. Cependant, il y avait un module de bibliothèque qui n'était pas déclaré dépendance par aucun autre module et n'était donc pas construit. Dans toutes les synchronisations, Android Studio choisirait ce module exact comme celui où chercher la bibliothèque de support (c'est pourquoi il semblait que cela se produise de manière aléatoire pour nous). Comme ce module n'a jamais été utilisé, il n'a jamais été construit, ce qui a empêché le fichier jar de se trouver dans le dossier intermédiaires du module.

Supprimer ce module de bibliothèque de settings.gradle et synchroniser à nouveau a résolu le problème pour nous.

2
ubuntudroid

Dans mon cas, l’erreur était sur un module de mon projet. J'ai résolu ce problème en ajoutant

dependencies {
    implementation 'com.Android.support:support-v4:20.0.+'
}

cette dépendance en grade du module correspondant

1
Gibs

IN Eclipse LUNA J'ai résolu ce problème en utilisant le menu contextuel de mon projet: Outils Android> Ajouter une bibliothèque de support 

0
AnNik