Android Studio 3.1 ne peut pas résoudre le symbole (thèmes, widget, attr, etc.)

J’ai mis à niveau Android Studio aujourd’hui vers la version 3.1, et maintenant, Android Studio dit qu’il ne peut pas résoudre les symboles pour la plupart des ressources (par exemple, ThemeOverlay dans styles.xml ou ?attr/actionBarSize ). Cela ne semble pas m’empêcher de construire ou de fonctionner dans un émulateur jusqu’à présent, mais ces erreurs me rendent nerveux.

Est-ce que quelqu’un d’autre a rencontré ce problème? Comment puis-je résoudre le problème? J’ai essayé de synchroniser et de nettoyer mon projet, mais cela ne semble pas du tout aider.

Des idées?

J’utilise Android Studio 3.1 avec Gradle version 4.4 et Gradle Plugin 3.1.0

EDIT: Ce problème affecte la mise à jour vers Android Studio 3.1.1, 3.1.2, 3.1.3, 3.1.4 ainsi que Gradle Plugin vers 3.1.1, 3.1.2, 3.1.3 et 3.1.4. Cependant, la réponse ci-dessous fonctionne toujours.

Fermez le projet et importez-le à nouveau. Travaillé pour moi aujourd’hui.

Fermer et rouvrir le projet en tant que projet Android Studio existant

Après la mise à niveau d’Android Studio, vous pouvez invalider le cache et le redémarrer

File > Invalidate Cache / Restart

introduction à la description de l'imagination aquí

La bibliothèque de support est désynchronisée.

Cette erreur se produit car la bibliothèque de support est désynchronisée par rapport à votre projet. Pour le récupérer, procédez comme suit:

  1. Ouvrez le fichier build.gradle de votre module d’ application
  2. Commentez les lignes d’ implementation pour la bibliothèque de support. Pour moi, cela ressemble à ceci:

     //implementation 'com.android.support:appcompat-v7:27.1.1' //implementation 'com.android.support:recyclerview-v7:27.1.1' //implementation 'com.android.support.constraint:constraint-la 
  3. Synchronisez votre projet avec gradle. Vous aurez des erreurs maintenant. Ne t’inquiète pas pour ça.

  4. Décommentez les lignes d’ implementation que vous avez précédemment commentées.

     implementation 'com.android.support:appcompat-v7:27.1.1' implementation 'com.android.support:recyclerview-v7:27.1.1' implementation 'com.android.support.constraint:constraint-la 
  5. Synchronisez votre projet avec gradle.

L’erreur “Impossible de résoudre le symbole” devrait disparaître maintenant. Cela a fonctionné pour moi plusieurs fois sur différents projets.

Remarque

  • Si votre projet comporte plusieurs modules, vous devez suivre les instructions ci-dessus pour tous les modules en même temps.

Pour une raison quelconque, ces atsortingbuts ne sont plus trouvés dans les 26 bibliothèques. Pour augmenter ces bibliothèques, vous devez également augmenter votre comstackSdk à 27. Il est probable que vous devrez également télécharger le SDK 27

Version courte, suite à l’application `graddle“

 android { comstackSdkVersion 27 //... } dependencies { implementation 'com.android.support:appcompat-v7:27.1.0' implementation 'com.android.support:design:27.1.0' //... } 

Version longue, vérifiez tous les fichiers suivants:

gradle-wrapper.properties

 dissortingbutionBase=GRADLE_USER_HOME dissortingbutionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists dissortingbutionUrl=https\://services.gradle.org/dissortingbutions/gradle-4.4-all.zip 

build.gradle (projet)

 buildscript { repositories { google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.1.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { google() jcenter() } } task clean(type: Delete) { delete rootProject.buildDir } 

Et enfin build.gradle (app)

 apply plugin: 'com.android.application' android { comstackSdkVersion 27 defaultConfig { applicationId "cl.cutiko.testingupdate" minSdkVersion 21 targetSdkVersion 27 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'com.android.support:appcompat-v7:27.1.0' implementation 'com.android.support.constraint:constraint-layout:1.0.2' implementation 'com.android.support:design:27.1.0' testImplementation 'junit:junit:4.12' androidTestImplementation 'com.android.support.test:runner:1.0.1' androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1' } 

Fermer un projet et ensuite ouvrir comme existant fait des merveilles!

Juste importer le projet à nouveau n’a pas fonctionné pour moi.

Ma solution était

  1. Supprimez le dossier .idea dans votre projet.
  2. Puis fermez le projet par File> Close Project
  3. File> New > Import Project ensuite le projet par File> New > Import Project OU depuis le Import Project (Gradle, Eclipse ADT, etc.) écran de bienvenue Import Project (Gradle, Eclipse ADT, etc.) .

Voir la capture d’écran pour plus d’informations

1ère solution

Ou

2ème solution

Vous pouvez essayer de fermer le projet et quitter Android Studio (la fermeture et la réimportation ne l’ont pas fait pour moi). Lancez Android Studio et ouvrez à nouveau le projet. Cela a fonctionné pour moi!

J’ai fermé et rouvert le projet en tant que projet Android Studio existant (ne pas l’importer), et ça a fonctionné! Merci à Andrew Glukhoff pour son commentaire.

 implementation 'com.android.support:appcompat-v7:26.1.0' implementation 'com.android.support.constraint:constraint-layout:1.1.2' implementation 'com.android.support:design:26.1.0' 

mettre à jour vos dépendances avec les éléments ci-dessus dans build.gradle (projet)

et mettez le code ci-dessous dans build.gradle (Module: app)

 classpath 'com.android.tools.build:gradle:3.1.1' classpath 'io.realm:realm-gradle-plugin:3.7.1' classpath 'com.google.gms:google-services:3.1.0' 

Pour moi, le même symptôme / erreur a été causé en glissant-déposant une nouvelle image dans le dossier ‘drawable-xxhdpi’ avec un nom que Android Studio n’aimait pas – par exemple avec un numéro ou une majuscule dans le nom.

Aucun message d’erreur utile n’a été envoyé, mais uniquement le message «Impossible de résoudre le symbole R».

Même après la synchronisation de l’application et du projet de nettoyage et de reconstruction, le problème restait que “R” n’était pas reconnu sans autre erreur.

La fermeture et l’importation du projet comme suggéré dans d’autres réponses ne fonctionnaient pas, ce qui est logique compte tenu du problème fondamental.

Cependant, même s’il semble que cela n’ait pas fonctionné par le passé, à en juger par d’autres questions et réponses sur SO, la suppression de la nouvelle image du dossier pouvant être dessiné a bien fonctionné.

De même, une meilleure solution, évidemment, consiste à renommer l’image pour supprimer tous les caractères qui ne sont pas appréciés par Android dans les noms de ressources, puis à effectuer un projet de nettoyage et / ou de reconstruction.

Exemple

setContentView ( R .layout.activity_login_ativity);

  1. Placez le curseur sur R
  2. Cliquez sur Alt + Entrée
  3. Choisissez la classe d’importation R

Travaille pour moi 🙂