Android Studio marque R en rouge avec le message d'erreur "Impossible de résoudre le symbole R", mais la compilation réussit

150

Dans chaque projet que j'ai essayé de créer dans Android Studio, toutes les utilisations de R sont marquées en rouge avec le message d'erreur "Impossible de résoudre le symbole R", mais la compilation réussit et l'application s'exécute. C'est vraiment ennuyeux, car cela bloque l'auto-complétion et montre d'énormes lignes ondulées rouges partout dans mon code.

J'utilise Android Studio 1.7.0 et je crée le projet avec les paramètres par défaut. Une capture d'écran est jointe:

Capture d'écran Android Studio

C'est mon build.gradle:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.4'
    }
}
apply plugin: 'android'

dependencies {
    compile files('libs/android-support-v4.jar')
}

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 7
        targetSdkVersion 16
    }
}

Voici à quoi ressemble la structure du projet:

entrez la description de l'image ici

Une idée de comment résoudre ce problème?

Ilya Kogan
la source
Cela s'est produit sur certains de mes projets. Pour résoudre ce problème, je «Nettoie», «Reconstruis», ferme le projet et rouvre. Ensuite, sélectionnez Outils -> Android -> Synchroniser le projet avec les fichiers Gradle. J'ai également essayé ce qui suit ... Fermez le projet et déplacez physiquement le dossier vers un nouveau répertoire ou renommez le répertoire actuel. Importez maintenant le projet, comme s'il était nouveau. Il existe plusieurs façons de le faire, à partir de l'écran Android initial, sélectionnez importer et lorsque vous localisez le répertoire, n'importez pas à partir du nom du projet ou du répertoire principal, importez un niveau dans `` App ''.
Snappy Cracker
Lecteurs, avant d'essayer autre chose qui pourrait être complexe ... essayez simplement de redémarrer Android Studio.
eRaisedToX

Réponses:

111

Cliquez simplement sur l' option Construire -> Rebuild Project dans votre Android Studio.

pathe.kiran
la source
J'avais une image .Jpg que j'avais changée en .png sans conversion appropriée. la suppression de ce fichier a résolu le problème. étrange cependant ..
DeathRs
Je voulais vraiment faire cette chose mais Android Studio est connu pour sa construction. Le mien prendra plus de 30 minutes si je faisais ça.
Neon Warge
solution parfaite !!
Akash Bisariya
J'ai dû le faire deux fois
Janac Meena
parfois c'est à cause de votre erreur de fichier XML. <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" tools:context=".MainActivity">Vérifiez ces lignes dans les fichiers xml et corrigez-les.
meyasir
63

J'ai constaté que ce problème était dû à des erreurs dans mes fichiers XML. Une fois que vous avez corrigé les erreurs XML, effectuez un nettoyage / compilation, cela a résolu le problème.

NoirChapeauSamouraï
la source
8
Simplement aider quiconque lit. C'est probablement quelque chose dans les fichiers XML qui est à l'origine de l'erreur. Pour moi, (je ne sais pas pourquoi), mais cela a été causé par une ligne de mise en page de fragment: android: layout_bottom = "@ id / my_list" Il suffit de passer de cette ligne à partir d'un fragment pour utiliser layout_top sur un autre fragment.
Mingsheng
Même chose pour moi! Merci pour l'aide
Michael
Pareil ici! Je vous remercie.
Teddy Wilson
Très bonne réponse! Merci
Berat Eyüboğlu
Oui, dans mon cas: la hauteur de mon élément xml était de '50' au lieu de '50dp'.
Krishna Raj Salim
44

Cliquez sur Build -> Rebuild Projectpuis sur Tools -> Android -> Sync Project with Gradle Files.

user2284700
la source
2
Cela marche. J'ai rencontré l'erreur après la mise à niveau de la version gradle.
Vaquita
Ma situation était la suivante: tous les cleanfaits Rdevenaient des erreurs, tous buildles corrigeaient, mais bien sûr «souillaient» le projet. Après avoir suivi cette réponse, j'ai pu enfin nettoyer le projet sans avoir d'erreurs.
talz le
Ajout juste à la réponse de @ user2284700: Dans AS 3.1.3 "Sync Project with Gradle Files" est sous le menu "File"
BMU
33

Assurez-vous que AndroidManifest.xmlle nom du package est correct. Cela a résolu le problème pour moi lorsque mon R.whateverétait marqué en rouge!

Je recommanderais également de vérifier tous vos gradlefichiers pour vous assurer que ces noms de packages sont corrects. Cela ne devrait pas tout rendre rouge, mais cela empêchera vos gradlefichiers de se synchroniser correctement.

grêlé
la source
Merci! Je faisais une petite expérience avec le changement de nom de paquet pour l'oublier ...
tom
17

NE RIEN FAIRE . Mettez simplement à jour Android Studio. Résolvez mon problème! Fonctionne parfaitement.

TedVN
la source
1
J'ai essayé toutes les solutions mentionnées ici. La mise à jour du studio Android a résolu le problème
Siva K Reddy C Shiva
1
Merci de m'avoir
évité
12

J'ai eu un problème similaire avec 'com.android.tools.build:gradle:3.3.1', j'ai essayé toutes les solutions ci-dessus, rien n'a fonctionné. C'était en fait un problème de build: gradle 3.3.1. Je l'ai changé en 3.2.1 puis cela a fonctionné.

Cela peut donc être un problème avec la version build: gradle.

Shashank Bhong
la source
03.2019 Cela a aidé. Ce qui était intéressant, c'est que cela s'est produit sur un seul de mes projets et pas sur deux autres projets. Maintenant, j'espère que la mise à jour d'Android Studio n'a pas gâché autre chose ...
Martin Berger
9
  1. Sélectionnez l'option de menu Fichier> Structure du projet.
  2. Appuyez sur OK dans la boîte de message (les modifications apportées à la structure du projet ne mettent pas à jour build.gradle).
  3. Sélectionnez "Modules" dans le volet latéral "Paramètres du projet".
  4. Pour chaque module (projet), vérifiez que la section "Dossiers exclus" ne contient pas le dossier "build". Si c'est le cas, appuyez sur le bouton «x» à côté du dossier «build».
  5. appuyer sur OK

Vous devriez maintenant voir le dossier «MyAppProject / MyApp / build / source». Celui-ci doit contenir le dossier «r» (où le fichier R.java est généré). Ici, vous devriez voir "debug", "release" en bleu (si vous avez un projectFlavour dans votre build.gradle, ceux-ci seront dans le dossier ""). Dans ce dossier de débogage / version doit se trouver le nom du package de votre application, puis un fichier R.java contenant tous vos identifiants de ressources.

reece
la source
1
Ce n'est plus pertinent, mais notez que je n'avais pas de fichier R.java dans ce dossier, comme vous pouvez le voir dans ma réponse à Loïc.
Ilya Kogan
9
  1. Reconstruisez le projet.
  2. Si (1) ne fonctionne pas, redémarrez Android Studio / Eclipse.

Si ni l'un ni l'autre ne fonctionne, vérifiez tous vos fichiers xml. Cette erreur se produit lorsque votre fichier xml est incorrect.

Lalit Kushwah
la source
Dans mon cas, il y avait un attribut dans le fichier manifest.xml qui a causé le problème. J'ai eu des nuits blanches jusqu'à ce que je découvre et supprime simplement la ligne. L'attribut était android: fullBackupContent = ""
Kingsley Ijike
6

Pour certaines raisons, le studio Android utilise des configurations différentes pour l'éditeur et pour le compilateur. Si cela fonctionne pour le compilateur, c'est bien. Si cela ne fonctionne pas pour l'éditeur. (il voit les fichiers non résolus).

Vous devez ajouter des répertoires à la source de votre projet. Par exemple, toutes les ressources doivent être marquées comme «source».

Fichier-> Structure du projet

Sélectionnez "Modules", puis votre projet. Et sélectionnez l' sourcesonglet. Sur la droite, trouvez votre répertoire de ressources et cliquez sur le bouton bleu "source". Fermez tout et cela devrait fonctionner.

Vous devrez également vous assurer que

build/source/r/debugest également une source. En j'ai tout mon build/source/*/debugmarqué comme source.

module principal .iml

<?xml version="1.0" encoding="UTF-8"?>
<module external.system.id="GRADLE" type="JAVA_MODULE" version="4">
  <component name="FacetManager">
    <facet type="android" name="Android">
      <configuration>
        <option name="SELECTED_BUILD_VARIANT" value="debug" />
        <option name="ASSEMBLE_TASK_NAME" value="assembleDebug" />
        <option name="ALLOW_USER_CONFIGURATION" value="false" />
        <option name="MANIFEST_FILE_RELATIVE_PATH" value="/src/main/AndroidManifest.xml" />
        <option name="RES_FOLDER_RELATIVE_PATH" value="/src/main/res" />
        <option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" />
      </configuration>
    </facet>
    <facet type="android-gradle" name="Android-Gradle">
      <configuration>
        <option name="GRADLE_PROJECT_PATH" value=":SherlockHolmes" />
      </configuration>
    </facet>
  </component>
  <component name="NewModuleRootManager" inherit-compiler-output="true">
    <exclude-output />
    <content url="file://$MODULE_DIR$">
      <sourceFolder url="file://$MODULE_DIR$/build/source/r/debug" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/build/source/aidl/debug" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/build/source/rs/debug" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/build/source/buildConfig/debug" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/build/res/rs/debug" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/build/source/r/test" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/build/source/aidl/test" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/build/source/rs/test" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/build/source/buildConfig/test" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/build/res/rs/test" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/debug/aidl" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/debug/assets" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/debug/java" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/debug/jni" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/debug/rs" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/debug/res" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/debug/resources" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/main/aidl" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/main/assets" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/main/res" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/main/resources" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/instrumentTest/aidl" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/instrumentTest/assets" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/instrumentTest/java" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/instrumentTest/jni" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/instrumentTest/rs" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/instrumentTest/res" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/instrumentTest/resources" isTestSource="true" />
      <excludeFolder url="file://$MODULE_DIR$/build/apk" />
      <excludeFolder url="file://$MODULE_DIR$/build/assets" />
      <excludeFolder url="file://$MODULE_DIR$/build/bundles" />
      <excludeFolder url="file://$MODULE_DIR$/build/classes" />
      <excludeFolder url="file://$MODULE_DIR$/build/dependency-cache" />
      <excludeFolder url="file://$MODULE_DIR$/build/exploded-bundles" />
      <excludeFolder url="file://$MODULE_DIR$/build/incremental" />
      <excludeFolder url="file://$MODULE_DIR$/build/libs" />
      <excludeFolder url="file://$MODULE_DIR$/build/manifests" />
      <excludeFolder url="file://$MODULE_DIR$/build/symbols" />
      <excludeFolder url="file://$MODULE_DIR$/build/tmp" />
    </content>
    <orderEntry type="jdk" jdkName="Android 4.2.2" jdkType="Android SDK" />
    <orderEntry type="sourceFolder" forTests="false" />
    <orderEntry type="library" name="Sherlock.aar" level="project" />
    <orderEntry type="library" name="SlidingMenu.aar" level="project" />
    <orderEntry type="library" name="support-v4-13.0.0" level="project" />
  </component>
</module>

projet iml

<?xml version="1.0" encoding="UTF-8"?>
<module external.system.id="GRADLE" type="JAVA_MODULE" version="4">
  <component name="FacetManager">
    <facet type="android-gradle" name="Android-Gradle">
      <configuration>
        <option name="GRADLE_PROJECT_PATH" value=":" />
      </configuration>
    </facet>
  </component>
  <component name="NewModuleRootManager" inherit-compiler-output="true">
    <exclude-output />
    <content url="file://$MODULE_DIR$">
      <excludeFolder url="file://$MODULE_DIR$/.gradle" />
      <excludeFolder url="file://$MODULE_DIR$/build" />
    </content>
    <orderEntry type="inheritedJdk" />
    <orderEntry type="sourceFolder" forTests="false" />
  </component>
</module>

Magie noire

Je ne suis pas sûr de celui-ci, mais je l'ai entendu fonctionner alors que je suis sûr que cela ne devrait rien changer. Essayez de compiler et d'enregistrer le projet après avoir commenté toutes les lignes qui nécessitentR . Puis quand tout n'est pas rouge. Essayez de les rajouter. Ce qui est étrange, c'est que votre build / source n'est pas généré.

Cette question suggère également de vérifier "le compilateur utilise une version externe"

Android Studio ne génère pas de R.java pour mon projet d'importation

Note d'accompagnement

Assurez-vous également que dans votre code java, il n'y a pas de fichier. import android.r;d'après ce que vous avez montré, tout semble bien. Juste étrange que la construction / source ne soit pas créée. Par exemple, je n'ai pas de build / apk. Peut-être que vous êtes en mode version et qu'il ne crée pas ces répertoires.

Loïc Faure-Lacroix
la source
Bonjour Loïc, j'ai ajouté une capture d'écran de la structure du projet à la question. Comme vous pouvez le voir, le resdossier entier est marqué comme "source", et je n'ai pas de build/sourcerépertoire. Dois-je le faire créer? Si c'est le cas, comment?
Ilya Kogan
eh bien, le répertoire build / source devrait être créé lors de la construction pour autant que je puisse dire. Le studio Android étant une version "alpha". Cela vient avec beaucoup de choses étranges. J'ai 1.7.0_21. Une idée serait de faire un build/rebuil project. Si vous pouvez exécuter gradle à partir de la ligne de commande, cela peut générer des erreurs qui ne sont pas affichées dans l'éditeur.
Loïc Faure-Lacroix
Il n'est pas créé, bien que le projet se compile et s'exécute avec succès sur l'appareil.
Ilya Kogan
Les fichiers iml ressemblent beaucoup aux vôtres, avec les mêmes dossiers inclus et exclus. "file: // $ MODULE_DIR $ / build / source / r / debug" est inclus même s'il n'existe pas. L'utilisation d'une version externe pose d'autres problèmes (le projet ne se compile pas du tout). Comment vérifier si je suis en mode version?
Ilya Kogan du
5

Voici ma solution temporaire jusqu'à ce que j'en trouve une meilleure:

  1. En utilisant Everything, trouvez où R.java est créé. Dans mon cas, c'était C:\Program Files (x86)\Android\android-studio\system\compiler\<project-name>.cb969c52\.generated\aapt\<module-name>.6badd9a4\production\com\<project-name>\<module-name>

  2. Dans la vue Projet, cliquez sur le module et appuyez sur F4. Ignorez l'avertissement.

  3. Cliquez sur "+ Ajouter une racine de contenu" et sélectionnez le dossier susmentionné. Assurez-vous qu'il est marqué en bleu (comme source).

Après avoir fait cela, tous les avertissements ont soudainement disparu. Le problème est que si vous collaborez avec d'autres personnes, le nom du dossier est différent sur chaque machine, soyez donc prudent lors de la synchronisation.

Ilya Kogan
la source
Avez-vous essayé la dernière version 0.2.3 d'Android Studio? Si vous rencontrez toujours le problème, signalez-le à code.google.com/p/android/issues afin que les développeurs Android Studio en soient conscients et puissent enquêter et résoudre le problème.
reece
1
Non, j'ai abandonné Android Studio. J'adore l'IDE, mais il y a encore tellement de bugs qu'il ne convient pas pour travailler en équipe. Nous sommes retournés à Eclipse.
Ilya Kogan
2
Aucun problème. Étant donné qu'Android Studio est encore en développement, vous devez être en mesure de signaler tous les bogues que vous trouvez (afin qu'ils puissent être corrigés) et être tolérant à l'égard de ses aspérités. Ce n'est pas pour tout le monde.
reece
5

Cela a fonctionné pour moi:

  1. Fermer et rouvrir le projet

  2. Appuyez sur "Synchroniser le projet avec le fichier Gradle" (est à côté de l'icône du gestionnaire AVD dans le menu supérieur) répétez 1-2 si Gradle n'a pas pu synchroniser pour la première fois. (le mien a fonctionné dans la deuxième fois).

A travaillé avec Android Studio 1.2.2

bastami82
la source
5

Je l'ai résolu par:

1) Sync Project with gradle files
2) Build -> Clean Project
3) Build -> Rebuild Project
4) File -> Invalidate caches

//imp step
5) Check your xml files properly.
Bapusaheb Shinde
la source
Un jour, sans raison apparente, mon application casse simplement ... des erreurs partout ... Merci beaucoup! Cela a été très utile!
JFreeman
1
Bénissez-vous, invalider les caches était la seule chose qui a aidé
Kibi
4

Allez simplement dans la liste du menu principal d'Android. Cliquez sur le menu Build , sous Build cliquez sur Rebuild Project .

entrez la description de l'image ici

Gundu Bandgar
la source
4

Parfois, ces erreurs de construction continueront de nulle part. Si cela vous arrive, essayez ceci:

Vérifiez à nouveau la validité du XML dans vos fichiers de ressources: Si votre fichier R.java n'a pas été généré pour la dernière version, vous verrez des erreurs dans votre projet partout où vous référencez une ressource. Cela peut être dû à une faute de frappe dans l'un de vos fichiers XML. Le format XML n'est pas toujours validé, de sorte que les fautes de frappe dans ces fichiers peuvent ne pas être signalées à votre attention. Trouver la faute de frappe et enregistrer le fichier devrait entraîner la régénération de R.java.

Nettoyez votre projet! Select Build → Clean ProjectCela reconstruira le projet à partir de zéro, ce qui peut entraîner une génération sans erreur.

Synchronisez votre projet avec Gradle! Select Tools → Android → Sync Project with Gradle FilesAndroid Studio reconstruira le projet à partir de zéro avec les paramètres de projet corrects, ce qui peut vous aider à résoudre les problèmes après avoir modifié votre configuration Gradle.

Exécutez Android Lint! Les peluches peuvent vous donner de bonnes informations concernant un problème. Si ce qui précède ne fonctionne pas, c'est là que vous trouverez probablement votre problème. Pour exécuter Lint,select Analyze → Inspect Code → select Whole project → OK analysez soigneusement les suggestions de Lint; commencez par des erreurs puis des avertissements.

Bonne chance.

Cracker vif
la source
Dans mon cas, il y avait un attribut dans le fichier manifest.xml qui a causé le problème. J'ai eu des nuits blanches jusqu'à ce que je découvre et supprime simplement la ligne. L'attribut était android: fullBackupContent = ""
Kingsley Ijike
3

Cette erreur m'arrive car il y a une entrée non valide dans mon fichier activity_main.xml.

Lorsque vous essayez de créer ou de nettoyer votre projet , des messages d'erreur s'affichent .

J'ai résolu le mien en lisant ces messages d'erreur , corrigez ce qui ne va pas dans mon fichier xml. puis reconstruisez le projet .

user5194610
la source
2

J'ai eu ce bug il y a quelques jours, j'ai essayé de regarder autour de moi jusqu'à ce que je décide de réinstaller Android Studio. Cela a fonctionné pour moi.

Mazvél
la source
La réinstallation n'a pas aidé :(
Ilya Kogan
C'est une méthode très rudimentaire.
Taslim Oseni
2

Lors de la création d'un projet à partir d'un échantillon, sans importer le projet existant, c'est bien (évite les conflits avec gradle, .idea, .iml, build, jars et apks, c'est-à-dire tous les fichiers générés par build inutiles), après avoir créé un nouveau projet, en copiant et en collant toutes les ressources pertinentes, je recommanderais:

vérification des packages et des importations à partir de packages dans le projet {déclaration AndroidManifest et toutes les importations dans les classes java}, toutes les ressources (dessinable, mip-map, mises en page et menus et votre build.gradle (un exemple de build.gradle à utiliser avec le dernier sdk peuvent être fournis sur demande)) pour voir s'ils sont là et si les chaînes et les identifiants déclarés existent réellement et ont été utilisés, après quoi votre seule erreur devrait être la question posée:

Bulid-> Projet propre

Outils-> Android-> Synchroniser le projet avec les fichiers Gradle

Fichier-> Invalider les caches et redémarrer

Dans le pire des cas, le redémarrage de votre machine aide.

Ce qui précède devrait fonctionner. N'hésitez pas à poser des questions si nécessaire, c'est à dire poster des commentaires.

iOSAndroidWindowsMobileAppsDev
la source
2

cela provoque principalement des erreurs dans le fichier xml, vérifiez vos dernières modifications xml et reconstruisez-le, même problème avec moi.

parvez rafi
la source
Cela a aidé, merci!
farahm
2

J'ai eu une erreur de réutilisation copier / coller dans la déclaration du package pour le manifeste

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="wrong.package.name">

le nom de l'activité principale avait le chemin correct, donc le manifeste ne contenait aucune erreur vérifiée.

Une fois ce problème résolu, le fichier source affichait toujours des erreurs bien que la construction ait réussi. Je viens de lancer l'application, puis les indicateurs d'erreur source se sont éclaircis.

La brique
la source
Pour moi, il y avait un attribut dans le fichier manifest.xml qui a causé le problème. J'ai simplement supprimé la ligne. L'attribut était android: fullBackupContent = ""
Kingsley Ijike
1

Cela a également fonctionné pour moi en nettoyant manuellement le dossier .idea / bibliothèques et en cliquant ensuite sur "Sync Project with Gradle Files" résout le problème. Apparemment, cette synchronisation ne supprime pas les éléments, mais conserve les anciens et ajoute les éléments actuels. Probablement un bug à signaler :)

kikoso
la source
1

J'ai eu le même problème avec Android Studio, j'ai découvert que build / generated / source / r ne contenait que le dossier de version et non le débogage. Donc, pour une raison quelconque, la compilation de débogage n'a pas généré de classe R utilisable.

Je l'ai résolu en ouvrant le fichier iml du projet et j'ai corrigé cette ligne

<option name="RES_FOLDERS_RELATIVE_PATH" value="" />

à

<option name="RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/main/res" />

resynchronisé avec gradle, commenté les lignes en utilisant R, exécutez le débogage pour générer le R, les lignes non commentées en utilisant R et relancez le débogage, corrigé.

Lukas Hanacek
la source
Où trouver le fichier iml?
Cappuccino90
même dossier où votre build.gradle est ... très probablement
Lukas Hanacek
1

La solution est simple:

Accédez à File > Project Structure > appet choisissez l' Flavoursonglet, sélectionnez API 21: Android 5.0 (Lollipop)dans la liste déroulante pour Min Sdk Version.

Kural Manivannan
la source
Merci, cela fonctionne! J'avais défini la valeur minSdkVersion sur une valeur beaucoup plus basse, et le retour a résolu le problème pour moi.
Arvindh Mani
1

Dans mon cas, j'ai suivi toutes les réponses que j'ai pu trouver sur Stackoverflow et aucune d'elles ne semblait résoudre ce problème. Toutes les réponses indiqueraient une possible corruption de fichier XML ou un conflit avec les noms Gradle. Certaines réponses ont affirmé qu'il serait nécessaire de nettoyer le projet ou de synchroniser le projet avec les fichiers Gradle. aucune de ces solutions ne résoudrait le problème. De plus, une fois que j'ai suivi un tutoriel sur la création d'une application Hello World et que je viens de suivre les fenêtres de l'assistant Android Studio sans aucun codage, cela n'aurait aucun sens de soupçonner qu'il s'agissait d'une faute de frappe ou quelque chose comme ça.

TLDR

Le problème s'est avéré être la version des outils de construction. Mon était réglé sur 23.0.0 rc1 , donc je l'ai changé en 22.0.1 . Je suppose que c'est parce que j'utilise la dernière version disponible d'Android Available.

Pour modifier cette valeur, vous pouvez ouvrir votre navigateur de projet dans la fenêtre de gauche> cliquez avec le bouton droit de la souris sur "application> Ouvrir les paramètres du module" et recherchez-le dans "l'onglet Propriétés"

Mauricio
la source
1

vous devez IMPORTER votre fichier projet R

import <YOUR-PROJECT-PACKGENAME>.R;
Joolah
la source
1

Le nettoyage du projet a aidé dans mon cas

Aller à

Build -> Clean Project
Ezio
la source
1

Si vous obtenez cette erreur, nettoyez votre projet.

  1. Allez construire au-dessus de votre studio Android
  2. Choisissez l'option nettoyer le projet

La raison en est que le nettoyage de votre .apkfichier précédent présent dans le dossier de projet de votre studio Android sur votre système est supprimé.

saksham agarwal
la source
1

Récemment j'importe mon projet dans le studio Android, une partie de R est marquée en rouge avec l'erreur meesage "impossible de résoudre le symbole R", mais la compilation réussit et l'application s'exécute.

Développer l'évidence:

  • IDE: studio Android 3.1.2
  • Système: Mac Os

Solution:

étape 1:

Trouvez le fichier de configuration pour Android studio
Mon chemin:

/Applications/Android Studio.app/Contents/bin/idea.properties

étape 2:

Changement 2500:

idea.max.intellisense.filesize=2500  

à 5000 ou plus:

idea.max.intellisense.filesize=5000  
Yu Zhang
la source
comment avez-vous pensé à ça? Qu'est-ce que ça veut dire?
Nikos Hidalgo
1
# Taille de fichier maximale (kilo-octets) IDE doit fournir une assistance de code pour. # Plus le fichier est volumineux, plus son éditeur fonctionne lentement et les besoins de mémoire système # plus élevés sont # si l'assistance de code est activée. Supprimez cette propriété ou définissez-la sur un nombre très élevé si vous avez besoin d'une # assistance de code pour tous les fichiers disponibles quelle que soit leur taille. idea.max.intellisense.filesize = 2500
Yu Zhang
1

Vous devez changer le chemin:

par exemple

import it.example.project.myproject.R;

changer

import it.example.project.R;

user2912087
la source
0

J'ai rencontré la même erreur, il s'avère que le fichier manifeste contenait des erreurs. Après l'avoir réparé, cliquez à nouveau sur Créer un projet, cela a bien fonctionné. Le studio Android ne donne parfois pas de messages d'erreur très utiles.

Rayon
la source
0

Je suis mordu par cela de temps en temps et il y a une autre chose à essayer: faire correspondre vos versions compileSdk et buildSdk aux dernières versions disponibles.

J'avais changé mon compileSdkVersion de 21 à 19 parce que le débogueur Android Studio (canal canari 1.1) ne traçait pas correctement dans les bibliothèques prédéfinies. J'ai trouvé qu'il semblait être un traçage basé sur la buildToolsVersion (19.1.0), que j'ai vérifiée en cliquant sur une erreur dans la trace de la pile (puis en choisissant 19 au lieu de 21). Bien que je l'ai changé directement dans le fichier build.gradle, une procédure graphique est ici: https://www.blogger.com/comment.g?blogID=4722727826918942842&postID=3875998513888772255 et je vais résumer:

  1. IDE Android Studio, sélectionnez Fichier | Structure du projet.
  2. Choisissez votre module, comme "application"
  3. Dans le champ Compiler le SDK, choisissez la dernière version
  4. Choisissez également la dernière version dans Build Tools

Confirmez et le projet devrait automatiquement se synchroniser correctement.

La leçon que j'en tire est qu'ils devraient tous les deux être identiques.

ǝɲǝɲbρɯͽ
la source