R ne peut pas être résolu - erreur Android

1073

Je viens de télécharger et d'installer le nouveau SDK Android. Je voulais créer une application simple pour la tester.

L'assistant a créé ce code:

package eu.mauriziopz.gps;

import android.app.Activity;
import android.os.Bundle;

public class ggps extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}

mais Eclipse me donne l'erreur

R ne peut pas être résolu

en ligne

setContentView(R.layout.main);

Pourquoi?

PS: J'ai un fichier XML nommé main.xmlsous res/layout/.

Maurizio Pozzobon
la source
Pour ceux qui rencontrent encore des problèmes avec eclipse ne pouvant pas mettre à jour / générer R.java. Une solution possible consiste à créer un fichier XML factice et à supprimer ce fichier XML. Dans mon cas, c'est la solution
denil
Honnêtement, cela semble si stupide (et ça l'est), mais modifier le fichier AndroidManifest.xml, puis annuler cette modification, puis enregistrer le fichier a fonctionné pour moi. Si j'ai nettoyé le projet après ça, il s'est cassé à nouveau. Et pendant tout ce temps, j'ai pensé que Xcode était le seul IDE qui avait ce genre d'erreurs mystérieuses.
iwasrobbed
3
Avez-vous essayé de faire un clic droit sur le projet -> Outils Android -> Fixer les paramètres du projet?
Sergei
6
Veuillez vérifier votre fichier de mise en page XMl, si une erreur en xml vous ne pouvez pas générer R.java, et l'erreur vient aussi après bulid et nettoyer également.
swiftBoy
1
Juste un conseil: lorsque j'ai changé IDE d'Eclipse vers Android Studio, cela ne m'est plus arrivé.
mata

Réponses:

840

Après avoir également repéré ce problème, j'ai trouvé cette note dans la documentation Android:

http://source.android.com/source/using-eclipse.html

* Remarque: Eclipse aime parfois ajouter une instruction "import android.R" en haut de vos fichiers qui utilisent des ressources, en particulier lorsque vous demandez à Eclipse de trier ou de gérer autrement les importations. Cela entraînera la rupture de votre marque . Recherchez ces instructions d'importation erronées et supprimez-les. *

En parcourant les exemples de didacticiels Android, j'utilisais souvent la commande Ctrl+ Shift+ Opour "Organiser les importations" et générer les instructions d'importation manquantes. Parfois, cela générerait l'instruction d'importation incorrecte qui masquerait la R.javaclasse qui est automatiquement générée lors de la génération.

Michael Levy
la source
32
Cela se produit également, mais un fichier de mise en page regroupé peut également en être la cause.
GHz
113
Ce bug classique est dans Eclipse depuis des années et n'est jamais corrigé. Des milliers de personnes sont confrontées à ce même problème.
Carol
52
Développeurs Eclipse, veuillez supprimer ce $ £% & "$ & / bug! Développeurs Google, veuillez me donner une suite £ $ & $"% & Android similaire à Xcode pour l'iPhone!
Abramodj
18
@ 2-Stroker: C'est un bug. Cela m'est arrivé lorsque j'ai créé un nouveau projet andorid de branche via l'éclipse WIZARD et il s'est plaint que «R ne peut pas être résolu». J'ai dû commenter les lignes setContentView & getMenuInflater, puis l'éclipse a généré le R.java après quoi je pouvais décommenter setContentView & getMenuInflator. Abramodj a raison, l'environnement a de sérieux problèmes si même votre exemple «bonjour le monde» ne se compile pas. Réparez-le Google!
CF_Maintainer
5
Comment Google n'accorde-t-il pas de fonds à eclipse.org pour faire réparer des articles comme celui-ci?
Cris
391

Chaque fois que j'avais un problème avec R non généré, ou même disparu, cela était dû à un problème dans le fichier de disposition XML qui empêchait la création de l'application.

Luc
la source
21
+1 pour cela. J'avais un fichier styles.xml plus ancien avec parent = "android: WindowTitleBackground" et cela cassait ma version et empêchait tout ce qui était généré vers "gen". L'erreur n'a pas été signalée, sauf dans la fenêtre de la console lorsque j'ai ouvert le projet pour la première fois.
Scott Persinger
12
exactement, si vous avez copié des mises en page d'un autre projet, et que vous obtenez cela, recherche les dessinables manquants - cela le réparera instantanément!
Gabor
4
Je pense que j'ai le même problème, existe-t-il un moyen de connaître l'une des dispositions?
Sergey Kucher
3
Oui, il me manquait un fichier dessinable et cela empêchait même le fichier R d'être généré. La chose étrange est que j'avais une android:icon="@drawable/XXX"déclaration sur une <item>ressource dans un menu, mais il n'y avait pas de gribouillis rouge signalant que la ressource drawable XXX n'était pas trouvée. Dans d'autres cas, a "@drawable/YYY" été signalé lorsque YYY n'a pas été trouvé, mais pas dans ce cas. Pour certaines raisons.
taylor
5
Oui, excellente résolution. Quand on obtient cette erreur .. plusieurs fois tous les fichiers de mise en page sont marqués comme ayant des erreurs .. C'est parce qu'ils recherchent tous R. Cependant, l'un d'eux a probablement une erreur sans rapport qui interrompt la génération. Dans mon cas, un dessinable manquant.
Todd Painton du
201

Chaque fois que vous obtenez

R ne peut pas être résolu

puis recherchez le /resrépertoire et il doit y avoir un fichier qui contient une erreur et qui empêche la création de l'application. Par exemple, il peut s'agir d'un fichier de mise en page ou il peut être dû à une ressource manquante, mais vous l'avez déjà défini dans le fichier XML.

Si vous avez des images supplémentaires, même inutilisées (!) Ou non référencées (!) Dans un dossier comme res / drawables-mdpi qui ne respectent pas les conventions de dénomination des fichiers (ne peuvent contenir que [a-z0-9_.]), Le La classe R.java pourrait ne pas générer, provoquant la chaîne d'événements tous les autres messages mentionnés. J'espère que cela aide!

Kailash
la source
J'ai eu ce problème avec l'exemple ApiDemos. Une ressource manquante dans le fichier strings.xml. Les erreurs XML sont répertoriées dans la console d'Eclipse.
lemotdit
Merci! c'était mon problème, j'avais une mise en page qui faisait une erreur mais il n'y avait aucun message à ce sujet.
29
Comment pouvez-vous vérifier les erreurs? Je ne reçois rien dans ma console lors de la construction / exécution
Vincent
4
Comment savoir quel fichier xml provoque l'erreur? Eclipse ne les marque pas!
Yar
1
J'ai eu 2 images du même nom dans le dossier hdpi (1 avec png et 1 avec format jpg) en supprimant 1 d'entre elles a résolu le problème
Haseeb Jadoon
134

mon projet a inclus un r.java.au début, R.layout.main fonctionne bien.Mais, après avoir ajouté du code, cela ne fonctionne pas, et l'erreur est que R.layout.main ne peut pas être résolu.Quel est le problème ?

Regardez vos importations. Les chances sont que la ligne:

import android.R;

sera là. Si tel est le cas, supprimez-le, afin que votre projet résolve R non pas avec la classe de ressources Android par défaut, mais avec celle générée automatiquement à partir de votre dossier / res /.

Dimitar Dimitrov
la source
5
Merci @ Dimitar, cela a résolu mon problème! Eclipse et la fonction d'importation automatique semblent m'avoir obtenu en ajoutant cette ligne d'importation automatiquement.
Steven
7
J'ai également eu des problèmes similaires lorsque j'ai nommé une mise en page en majuscules
Travis
C'est l'une des 5 principales raisons pour lesquelles les gens obtiennent "R introuvable". J'ai compilé une page de problème / solution avec des images qui montrent les 5 principaux au lien ci-dessous. J'espère vraiment que la liste aide les gens car c'est un problème courant. spragucm.wordpress.com/2014/05/13/…
Chris Sprague
après avoir supprimé R, à certains endroits, R est utilisé comme classe et donne maintenant une erreur, comment résoudre cela?
Narendra Jaggi
96

Et une autre chose qui peut provoquer ce problème:

J'ai installé le nouvel ADT (v. 22). Il a cessé de créer un gendossier qui comprend R.java. La solution consistait également à installer de nouveaux outils de création de SDK Android à partir d'Android SDK Manager.

Solution trouvée ici

Michał K
la source
Moi aussi. Et quand j'ai sélectionné le gestionnaire du SDK, et voilà, les outils de construction apparaissent vérifiés automatiquement pour l'installation, avec une note qu'il n'a pas été installé! Ce qui donne???
David à HotspotOffice le
J'ai eu le même problème. Je suis tellement content que vous ayez partagé cela. J'ai cherché une erreur dans mon propre code pendant deux jours. Je suis très déçu de Google, car ce message d'erreur a été très difficile à résoudre, mais il a été causé par sa propre erreur, bien que les outils ne signalent pas correctement ce qui le provoque. J'ai fait des changements en même temps à mon projet, donc je pensais que c'était à nouveau ma faute.
Reijo Korhonen
5
A travaillé pour moi, merci! Cela renforce juste mon mantra: "ne jamais rien mettre à jour pendant le développement".
Rodrigo Dias
je traînais pour chercher la réponse mais rien n'a fonctionné pour moi. je pense que c'était un problème d'éclipse ou de sdk. comme vous le dites, je supprime simplement le paquet eclipse précédent et le réinstalle. et puis ça marche. votre réponse a été aidée
débutants le
C'était le problème dans mon cas! J'ai perdu un jour à essayer de corriger l'erreur R, à ajouter / supprimer des références et à essayer d'autres options. Le mien était une nouvelle configuration d'ADT, et une nouvelle création de projet Android, et recevait toujours l'erreur. Il s'est finalement avéré que j'ai dû installer toutes les mises à jour disponibles des outils du SDK Android, des outils de la plateforme SDK Android et des outils de construction du SDK: p
Saurabh Kumar
87

R.javaest un fichier créé par les plugins Android Eclipse lors de la création de votre application. R.javaest créé sous le répertoire "gen". Ce fichier est généré à partir des informations du répertoire "res". Si vous exécutez sélectionnez "Projet" -> "Nettoyer ..." dans le menu Eclipse, il supprimera puis régénérera le R.javafichier.

Le problème «R ne peut pas être résolu» se produit lorsque vous modifiez le nom de votre package dans le AndroidManifest.xmlfichier. Il utilise le nom de votre package Android pour créer un sous-répertoire sous le répertoire "gen" où il stocke le R.javafichier.

Eclipse peut avoir des problèmes d'exécution propre, car il est difficile de savoir où se trouve le R.javafichier lorsque vous avez modifié le nom du package Android. Vous pouvez soit renommer le sous-répertoire sous genpour qu'il corresponde à votre nouveau nom de package, soit changer le nom de votre package en l'ancien. Faites le nettoyage, puis changez le nom du package pour le nouveau nom que vous souhaitez. Cela fonctionne mieux si vous empêchez Eclipse d'essayer de générer pendant que vous modifiez le nom du package. Dans le menu "Projet", décochez l'option "Construire automatiquement" et aussi lorsque la boîte de dialogue "Nettoyer ..." demande si elle doit "Démarrer une génération immédiatement" décochez la case pour qu'elle n'essaye pas de construire pendant que vous modifiez le nom du package. Après avoir changé le nom, vous pouvez réactiver "Générer automatiquement".

Notez que si le AndroidManifest.xmlnom de votre package de fichiers ne correspond pas à votre nom de package Java, Eclipse finira par ajouter automatiquement un "import <votre nom de package Android> .R;" ligne dans tous vos .javafichiers qui ont des références à R. Si vous changez le AndroidManifest.xml nom de votre package, parfois Eclipse ne met pas à jour toutes ces importations ajoutées. Si cela se produit, utilisez le refactoring Eclipse ( ALT+ Shift+ R) pour changer l'instruction d'importation dans l'un de vos fichiers Java en votre nouveau AndroidManifest.xmlnom de package. Il est préférable de le faire tant que vous avez désactivé la "Construction automatique".

utilisateur286516
la source
21
Cela ressemble à un copier-coller sans référence
Casebash
1
La copie / collage multiple de fichiers et la refactorisation de noms conduisent au même problème, malgré tous les noms de fichiers et le contenu étaient corrects. Le nettoyage du projet, la suppression manuelle de R.java et de tous les en-têtes d'importation, puis la reconstruction de ces en-têtes d'importation (toujours avec CTRL + MAJ + O) ont bien fonctionné.
hornetbzz
Cela a fonctionné pour moi. J'avais changé le nom du package dans le manifeste. J'ai dû utiliser ctrl-shift-O dans les classes qui faisaient référence aux valeurs de classe R générées afin d'ajouter l'importation correcte.
Chuck Krutsinger
Cela m'a arrangé. J'ai également vu le problème d'importation se produire dans le passé, mais cette fois, le problème était que le nom du package dans le manifeste ne correspondait pas au nom du package dans le dossier src.
Jim Range
J'ai eu deux activités dans ma candidature. L'un avait un nom de package différent de celui contre lequel R était généré. J'ai dû importer R manuellement en utilisant quelque chose commeimport com.example.main.package.name.R;
Oliver Moran
85

Ce que Will a dit était juste

R est une classe générée automatiquement qui contient les constantes utilisées pour identifier vos> ressources. Si vous n'avez pas de fichier R.java (ce serait gen / eu.mauriziopz.gps / R.java dans> Eclipse avec le SDK 1.5), je recommanderais de fermer et de rouvrir votre projet ou d'aller dans> Projet> Tout construire (et en sélectionnant "Construire automatiquement" pendant que là-bas comme recommandé par> Josef). Si cela ne fonctionne pas, essayez de créer un nouveau projet, si le problème est recréé, postez ici à nouveau et nous irons plus en détail.

mais j'ai découvert qu'il y avait un autre problème qui causait le premier. Les outils dans le répertoire SDK n'avaient pas les autorisations pour être exécutés, donc c'était comme n'existait pas pour Eclipse, donc il n'a pas construit le R.javafichier.

La modification de l'autorisation et la sélection de "Générer automatiquement" ont donc résolu le problème.

MaurizioPz
la source
@Jignesh - cd $ANDROID_SDK_ROOT/build-tools/<version>. Ensuite , chmod a+xsur les fichiers comme aapt, aidl, dexdump, dx, etc. ANDROID_SDK_ROOTdevraient être fixées dans votre environnement, et il pointera vers votre installation du SDK. Par exemple /opt/android-sdk,. Il est important de définir les deux ANDROID_SDK_ROOTet ANDROID_NDK_ROOTparce que les outils Android les utilisent en interne. Voir le répertoire NDK recommandé? sur la liste des utilisateurs NDK.
jww
@Lewis .. J'ai déjà sélectionné "Construire automatiquement" mais l'erreur est toujours là.
d_unknown
39

R est une classe générée automatiquement qui contient les constantes utilisées pour identifier vos ressources. Si vous n'avez pas de fichier R.java (ce serait gen / eu.mauriziopz.gps / R.java dans Eclipse avec le SDK 1.5), je recommanderais de fermer et de rouvrir votre projet ou d'aller dans Projet> Tout construire (et en sélectionnant "Construire automatiquement" alors que là-bas comme recommandé par Josef). Si cela ne fonctionne pas, essayez de créer un nouveau projet, si le problème est recréé, postez à nouveau ici et nous irons plus en détail.

Volonté
la source
8
Cela a fonctionné pour moi, mais je devais d'abord "Projeter -> Nettoyer ...".
Matt Connolly
27

Fermez tous les fichiers, nettoyez le projet, redémarrez Eclipse.

sharika
la source
23
+1 Mais parfois, il a besoin de 3 redémarrages d'éclipse et de 7 nettoyages de projet entre les deux. Continuez à essayer ;-) #rant
Matthias Bauch
3
Mélangez-le en touchant (modifier + enregistrer) les fichiers .xml (strings.xml ...).
Ali Shakiba
24

Cela vaut la peine de s'enregistrer AndroidManifest.xml. L'attribut packagea la valeur correcte.

C'est:

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

Après avoir modifié cela, le R.javasera régénéré.

sept
la source
Mon nom de package d'origine était com.xxxxxdroid.router. J'ai créé une nouvelle version de mon application com.xxxxxdroid2.router. Une fois que j'ai fait cela, j'ai dû mettre à jour le nom du package dans AndroidManifest.xml, mais seulement beaucoup plus tard après avoir commencé à copier et coller des anciennes classes. Merci pour le pointeur!
Eugene van der Merwe
cela a résolu mon problème, je travaillais dans un fichier xml, content de m'être souvenu lequel, j'en ai des tas ... merci ...
GHz
19

Cette erreur peut également être provoquée par l'ajout d'une activité à un espace de noms différent de l'espace de noms racine de votre package.

Par exemple, si com.example.myappest l'espace de noms racine de votre package, vous pouvez ensuite ajouter une activité à l' com.example.myapp.activitiesespace de noms.

Cela produira l'erreur «R ne peut pas être résolu».

Pour corriger l'importation, le R dans l'espace de noms par défaut de votre activité doit être:

import com.example.myapp.R;
Rob
la source
Cela m'a aidé, j'avais déplacé mes activités dans un package sous la racine, en ajoutant le package racine en tant qu'importation (import com.example.myapp.R;) a résolu le problème.
eageranalyst
19

En plus des excellentes suggestions des réponses précédentes, assurez-vous que votre cible Android est définie:

  1. Faites un clic droit sur votre projet
  2. Choisissez Propriétés
  3. Choisissez Android dans le menu de gauche
  4. Cochez une case à côté de la cible de construction de projet appropriée.
  5. Cliquez sur Appliquer et OK

Edit: Un an plus tard, j'ai trouvé une autre cause. J'avais une image .jpg dans mon dossier dessinable avec le même nom qu'une image .png. Référencer cette image dans mon code doit avoir confondu le programme et il a donné l'erreur "R ne peut pas être résolu".

satyrFrost
la source
17

Assurez-vous d'avoir installé le gestionnaire sdk du formulaire de l'outil de construction Android

cliquez sur le bouton droit de la souris sur propriétés-> Java BuildPath sélectionnez Bibliothèque et ajoutez android-support.jar en suivant ces étapes.

Allez dans Projet-> Propriétés-> Chemin de génération Java puis sélectionnez l'onglet Ordre et exportation. Définissez la bibliothèque .jar de support android cochée et placez-la en haut de la liste. Et nettoyer et reconstruire .. Cela fonctionne pour la plupart des cas

entrez la description de l'image ici

Sunil Kumar
la source
15

Je viens d'avoir ce problème pour la millionième fois et j'ai réalisé ce qui en était la cause: j'ai créé un fichier XML avec des lettres majuscules dans le nom. Tous vos noms de fichiers XML /resdoivent correspondre [a-z0-9\\._].

utilisateur132014
la source
aussi, je viens de remarquer que le débordement de pile nous oblige à échapper à toutes les barres obliques inverses.
14

Solution la plus simple - Parfois, il vous suffit d'enregistrer le fichier XML sur lequel vous travailliez pour que le générateur automatique démarre.

Enregistrez le fichier (par exemple main.xml) puis supprimez le fichier R.java et voyez si le R.java régénéré résout le problème de résolution R.

akim
la source
Vrai. Parfois, s'il indique qu'il y a un problème dans votre XML où il n'y en a pas (ligne squiggly rouge ou point d'exclamation jaune), supprimez la ligne incriminée, enregistrez le fichier XML, collez-la à nouveau et enregistrez-la à nouveau. Si vous ne construisez pas automatiquement, générez à nouveau après cela, et cela pourrait bien fonctionner. Eclipse est parfois stupide. :)
hotshot309
Malgré les autres réponses énumérées ci-dessus, celle-ci s'est avérée être la bonne pour moi. J'ai d'abord reçu le message "Can't find APK" lorsque je suis allé compiler un exemple de code, puis j'ai fait un nettoyage qui a généré une tonne d'erreurs "R ne peut pas être résolu", puis en ouvrant simplement le fichier .xml et en l'enregistrant manuellement les erreurs ont été effacés et j'ai pu compiler.
sXe
Si vrai: après avoir nettoyé les projets, R.java avait disparu - l'édition et l'enregistrement du fichier strings.xml ont résolu le problème.
BurninLeo
12

Vérifiez les noms des fichiers XML. Assurez-vous qu'ils sont tous en minuscules.

Assurez-vous également que tous les noms de ressource d'image sont également tous en MAJUSCULE. J'avais une lettre majuscule au nom de mon fichier jpg, et cela a provoqué l'erreur R non résolue dans tout mon projet.

TonyS
la source
+1 pour c'était mon problème. Vous devez nommer vos images comme suit: eicon.png et non eIcon.png. J'ai trouvé l'erreur en regardant le Consol. Il retournait une erreur sur le fichier avec un nom de fichier non valide: ...
jasonflaherty
10

Cette erreur est apparue sur mon installation Linux Mint x64. Il s'est avéré que le résultat était un échec dans le ADBbinaire, car le ia32-libspaquet n'était pas installé. Courir simplementapt-get install ia32-libs et de relancer Eclipse a corrigé l'erreur.

Si votre distribution x64 n'a pas de librairies ia32, vous devrez aller sur Multiarch.

Vérifiez # 4 et # 5 sur ce post: http://crunchbang.org/forums/viewtopic.php?pid=277883#p277883

J'espère que cela aide quelqu'un.

Meião
la source
Il est à noter que si vous avez une installation Linux 64 bits, vous aurez besoin de ia32-libs. Si vous ne l'avez pas, tenter d'exécuter la commande adb entraînera un étrange message disant qu'il ne peut pas trouver le fichier ou le répertoire.
rs_atl
10

Vous devrez peut-être mettre à jour / installer les outils du SDK. Relancez Android SDK Manager à nouveau et installez un nouvel élément: Android SDK Build-tools.one par une suppression, corrigez celui qui fonctionne pour vous.entrez la description de l'image ici

Nazmul Hasan
la source
9

Vous devrez peut-être mettre à jour les outils du SDK. Relancez Android SDK Manager et installez un nouvel élément: Android SDK Build-tools.

entrez la description de l'image ici

Eduardo Dennis
la source
8

J'ai aussi eu ce problème. Il s'est avéré que j'avais supprimé par inadvertance la ressource de chaîne "app_name" du strings.xmlfichier, ce qui provoquait une erreur silencieuse. Une fois que je l'ai ajouté, la classe R a été générée avec succès et tout était de nouveau opérationnel.

Guy Starbuck
la source
6

Essayez de mettre votre nouveau nom de fichier de mise en page XML en minuscules. Par exemple, utilisez my_file.xmlau lieu de myFile.xml.

Malcom
la source
+1 OUI! Assurez-vous qu'il respecte les conventions de dénomination correctes ... [a-z0-9_.]
jasonflaherty
6

Une autre raison R.javapeut ne pas être générée automatiquement si vous avez des répertoires comme res / drawable-hdpi , res / drawable-mdpi ou res / drawable-ldpi .

1.6+ semble être OK avec ces répertoires, mais 1.5 n'en veut pas. Lorsque j'ai supprimé ces répertoires, R.javaj'ai recommencé la génération automatique pour moi.

Peter Mortensen
la source
6

Vérifiez d'abord s'il y a une erreur dans une disposition xml ou non, si vous la résolvez d'abord.

Sinon, supprimez la dépendance junit du projet et reconstruisez le projet.

entrez la description de l'image ici

Jaimin Prajapati
la source
5

Cela est souvent dû au numéro de version MinSDK que vous avez fourni lors de la création du projet. Exemple:

Si vous voulez que 2.1 soit le minimum, Android 2.1 est en fait le niveau 7 de l'API.

Vous pouvez voir de quoi je parle lorsque vous parcourez le SDK que vous avez téléchargé et installé. Accédez à l'emplacement où vous avez installé le SDK ( C:\android-sdk-windowspar exemple) et ouvrez le dossier nommé "plates-formes". Vous verrez quelque chose comme "android-7" répertorié sous forme de dossier, et si vous ouvrez cela, il y a un source.propertiesfichier qui, lorsqu'il est ouvert avec un éditeur de texte, vous montrera la version de plate-forme correspondante.

Lorsque vous créez un projet et que vous devez sélectionner une API «Build Target», la dernière colonne de cette liste nommée «API Level» affiche le nombre que vous recherchez lorsque vous remplissez le paramètre MinSDK.

Il s'agit probablement de l'une des erreurs les plus courantes qui entraîne la R.javanon-création du fichier sous Projet> gen> nom_paquet> R.java.

Aaron DeRenard
la source
5

Retirez main.out.xml. Je suis nouveau dans ce domaine et je ne sais pas encore à quoi sert ce fichier, mais le supprimer a résolu le problème.

utilisateur389061
la source
5

Accédez simplement à la liste du menu supérieur d'Android. cliquez sur Build Menu, sous Build, cliquez sur Rebuild Project .

entrez la description de l'image ici

Gundu Bandgar
la source
4

J'ai eu les exemples d'Android 8 et essayais d'utiliser Android 7 SDK. Lorsque j'ai fermé le projet et rouvert le dossier de l'application et choisi d'utiliser Android 8 SDK, il a pu trouver le fichier R. J'espère que cela t'aides.

vkris
la source
4

Dans mon cas, j'ai eu une erreur dans mon AndroidManifest.xml. D'autres ont dit que vos fichiers XML devaient être exempts d'erreurs, mais je ne cherchais que dans le dossier res /. Trouvez et corrigez autant d'erreurs que possible et le problème pourrait bien se résoudre.

Brian Lacy
la source
C'était le coupable dans mon cas. TOUTE erreur dans le fichier manifest.xml peut provoquer ce problème si R.java n'a pas encore été construit.
Scott Biggs
4

Au cas où quelqu'un serait intéressé (je pourrais peut-être vous sauver la vie ici), j'ai eu l'erreur, R.xmlne peut pas être résolu, légèrement différent sur un projet GLS. Hmmmm. Après avoir regardé R.java, j'ai trouvé une classe générée automatiquement,XML.java , (je pense) n'était pas là.

Solution? Il fallait un nouveau dossier dans res: res\xmlet un fichier appelé default_values.xml là-dedans. Alors tout allait bien.

Au cas où vous n'auriez pas ce fichier, c'est:

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen
    xmlns:android="http://schemas.android.com/apk/res/android">
</PreferenceScreen>
phil
la source