177 votes

Pourquoi Android Studio signale-t-il que "l'URI n'est pas enregistré" ?

J'ai donc essayé Android Studio, parce que j'aime beaucoup Resharper et que j'ai remarqué que l'IDE intégrait certaines de leurs fonctionnalités. Après avoir créé un nouveau projet par défaut, j'ai ajouté un nouveau fichier de mise en page et j'ai voulu changer la mise en page par défaut de l'exemple 'hello world', et j'ai obtenu une erreur "URI is not registered" sur les lignes suivantes :

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"

Je n'ai encore rien fait d'autre au projet généré par défaut. Je suis tombé sur une autre question qui semble être liée ( L'URI du schéma du projet Intellij Android n'est pas enregistré ? ), mais ignorer quelque chose me semble bizarre. J'ai essayé, mais cela provoque RelativeLayout (et probablement tous les autres éléments liés à Android) n'est plus reconnu (message d'erreur : "Cannot find the declaration of element 'RelativeLayout'").

Avez-vous des idées sur la façon de résoudre ce problème ?

enter image description here

enter image description here

enter image description here

1voto

Clark Battle Points 1

Pour moi, les fichiers xml incriminés n'avaient pas la ligne d'en-tête...

<?xml version="1.0" encoding="utf-8"?>

En ajoutant ça, ça a marché.

1voto

ManiacalG Points 211

J'ai recommencé à avoir ce problème. Ce qui fonctionne maintenant, c'est d'ajouter des déchets dans build.gradle. Ensuite, essayez et synchronisez. Quand ça échoue, on enlève les déchets et on re-synchronise. Après l'indexation, ça marche.

1voto

DanD Points 138

Une autre suggestion, qui a été la solution pour moi : J'ai eu l'erreur dans la ligne

<resources xmlns:ns1="http://schemas.android.com/tools" xmlns:ns2="urn:oasis:names:tc:xliff:document:1.2">

dans le fichier values.xml qui a été généré automatiquement pendant le processus de construction.

Le problème a été résolu en ajoutant le android dans le fichier styles.xml.

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="textColorPrimary">@color/textColorPrimary</item>
        <item name="colorBackground">@color/colorPrimaryDark</item>
    </style>

a dû être modifié en

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="android:textColorPrimary">@color/textColorPrimary</item>
        <item name="android:colorBackground">@color/colorPrimaryDark</item>
    </style>

1voto

zhangliang Points 221

Pour moi, je clone un projet depuis gitlab, il y a une table des matières :

TradeClient/TradeClient/app/...

J'ai rencontré ce problème, je l'ai résolu par la méthode ci-dessous :

  • supprimer le chemin central "TradeClient", comme TradeClient/app/...
  • puis Fichier -> Invalider les caches / Redémarrer...

0voto

Saad Farooq Points 2507

Le nouveau système de construction dans Android Studio crée un build dossier. L'inspection du code s'effectue sur ce dossier ainsi que sur le dossier gradle dossier. Ces dossiers devraient probablement être ignorés lors de l'inspection du code.

J'ai soulevé un problème auprès de l'équipe Android Studio à :

https://code.google.com/p/Android/issues/detail?id=56415

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X