Programing

Android Studio에서“URI가 등록되지 않았다”고보고하는 이유는 무엇입니까?

crosscheck 2020. 6. 8. 20:49
반응형

Android Studio에서“URI가 등록되지 않았다”고보고하는 이유는 무엇입니까? [닫은]


그래서 저는 Resharper를 정말로 좋아하고 IDE에 일부 기능이 내장되어 있음을 알았 기 때문에 Android Studio를 사용해 보았습니다. 이제 기본 새 프로젝트를 만든 후 새 레이아웃 파일을 추가하고 기존 기본 'hello world'예제 레이아웃을 변경하려고했는데 다음 줄에 "URI is not registered"오류가 발생했습니다.

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

기본 생성 프로젝트에 대해서는 아직 아무것도하지 않았습니다. 관련이있는 것으로 보이는 다른 질문 ( Intellij Android 프로젝트 스키마 URI가 등록되지 않았습니까? )을 발견했지만 뭔가를 무시하면 나에게 이상한 느낌이 듭니다. 나는 실제로 그것을 시도했지만 그로 인해 RelativeLayout(그리고 아마도 다른 모든 안드로이드 관련 것들) 더 이상 인식되지 않습니다 (오류 메시지 : " 'RelativeLayout'요소의 선언을 찾을 수 없습니다").

이 문제를 해결하는 방법에 대한 아이디어가 있습니까?


잘못된 목적지에 있기 때문에이 문제가 발생했습니다! Layout 자원 파일의 올바른 디렉토리는 "res-all-layout"이 아닌 "res-layout"아래에 있어야합니다.


나에게 이것은 디버그 및 릴리스 빌드 변형을 사용했기 때문입니다. 새 폴더 src / debug / res / layout / some_layout.xml 파일을 수동으로 추가했는데 URI를 인식하지 못했습니다. 빌드 변형을 해제 한 다음 다시 디버그로 전환했습니다. 이로 인해 Android Studio가 무언가를 다시로드하고 오류가 사라졌습니다.

편집 : 또한 올바른 파일 이름이 있는지 확인하십시오. 디버그 AndroidManifest.xml을 추가하여이 문제가 다시 발생했지만 실수로 AndroidManifest.xml.xml이라는 이름을 지정했습니다.


Intellij IDEA를 사용하지만 Android Studio에서도 작동한다고 생각합니다. IDE 오른쪽 하단 모서리에 "이벤트 로그"가 표시됩니까? " Android 프레임 워크가 프로젝트 구성에서 감지되었습니다 "와 같은 메시지 가 표시 되었습니까 ? 프레임 워크 구성이 있어야합니다. 그렇다면 메시지 링크를 따르십시오.
같은 방법으로 " 파일> 프로젝트 구조> 모듈 "로 이동 한 다음 Android 패싯을 추가 할 수 있습니다.

여기에 이미지 설명을 입력하십시오

그런데 사용자 정의 네임 스페이스를 사용하려면 매니페스트 요소의 AndroidManifest.xml 패키지 속성을 정의 할 때 리소스 식별자를 패키지 이름으로 작성합니다. 아래는 내 코드입니다.

<manifest package="com.my.name.android">
    ...
</manifest>

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

이것이 도움이되기를 바랍니다.


이 문제는 아무 이유없이 갑자기 나타났습니다. 방금 Android Studio에서 모든 탭을 닫고 문제가있는 xml 파일을 다시 열었습니다. 문제 해결됨! :)


Android Studio 3.1.2에서이 오류는 캐시 메모리의 잘못된 유효성 검증으로 인해 발생합니다.,

Project 폴더로 이동하여 .idea 폴더의 모든 내용을 삭제 하십시오.

그러면 캐시 메모리가 삭제되고 프로젝트를 다시로드하면 새 캐시 메모리 폴더가 만들어지고 이동하기에 좋습니다.,


플러그인 문제입니다.

  1. 안드로이드 스튜디오를 다시 시작하십시오.
  2. 플러그인 활성화를위한 팝업 창이 표시됩니다
  3. 플러그인 활성화를 클릭 한 다음 확인을 클릭하십시오.

그런 다음 스튜디오가 자동으로 다시 시작되고 작동합니다.

그것이 효과가 있기를 바랍니다.


내 문제는 내 폴더가 다음과 같이 구성되었다는 것입니다.

MyProject/ res/ layout/ main.xml layout-land/ main.xml

(내 Slayout-land폴더는 폴더에있었습니다 layout)

I changed the structure to this and it worked for me:

MyProject/ res/ layout/ main.xml layout-land/ main.xml

I hope that this helps!


Don't know the reason behind this error but I found out this somewhere and it solved my problem.

  • Go to "File > Project Structure > Modules"
  • Click "add (+)"
  • Click "android" and "apply" and then "ok"

it turns out I was editing the DEBUG version of the xml, to fix it, simply close the tab that has the error and re-open it


i had the same error. I solved it by importing the project again to the android studio.


For me Plugin Android Support get Disabled somehow. Enabling Plugins again worked for me.

Settings > Plugins > Android Support

Select appropriate flavour in Build Variants.

If you are viewing a particular file under Flavour1, select that flavor in BuildVariants window.

If your IDE is Android Studio (3.2.1 as of this writing), you should find Build Variants window on the lower left, aligned vertically.


Sometimes this error is correlated to other errors in your manifest. Check if there are some missing dependencies and if all the tags are closed. In my case I had deleted a folder in /res folder, I restored it and that error disappeared.


For me, the offending xml files were missing the header line...

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

Adding that fixed it.


Started getting this again, What actually works now is to add some rubbish inside build.gradle. Then try and sync. When it fails remove the rubbish and re-sync. After indexing, it works.


  • Go to "Preferences > Languages&Frameworks > Schemas and DTDS"
  • Click "add(+)"
  • Click "apply" and then "ok"

hope it will works.


For me, i clone a project from gitlab, there is table of contents:

TradeClient/TradeClient/app/...

then i encounter this problem, i solve the problem by below method:

  • remove the middle path "TradeClient", as TradeClient/app/...
  • then File -> Invalidate Caches / Restart...

The new build system in Android Studio creates a build folder. The code inspection barfs on this folder as well as the gradle folder. These folders should proably be ignored when running code inspection.

I have raised an issue with the Android Studio team at:

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


I had this problem now - I created a new folder under the layout folder which would contain all the xml relate to my "home" page of my app and then another folder that would relate to my "settings" page as I wanted to organise my xml.

However, android only recognises the layout folder for xmls, not the layout/home or layout/settings folder so that is why it was giving me the error.

Thanks to Mazen Kasser answer, he assisted me in figuring this out.


Ran into this recently trying to migrating an existing app to material design. All I had to do to fix it was change the project's Compile SDK Version. File | Project Settings. Select app and pick a Compile SDK version for Lollipop or higher.


Any solution mentioned here helped me. I'll post my problem just in case is helpful to anyone. In my case the error was happening using data binding. It seems that using data binding xmls intermediates are created. If there is an error trying to open the error will show the intermediate xml with this "URI not registered" instead of opening the right xml with the error.


I had this problem and for me it was due to creating and manipulating resource files outside Android Studio. I followed the instructions on creating new resource files and folders through Android Studio and solved the problem. You need to create a new Resource File Not directory. It will let you specify or create a directory for you if you need it. If you are creating directories for layouts for different versions, enter the info at the top including the name of the resource file you want to copy to the new folder and select Version and enter the Android version. It will create the appropriate directory with a copy of your resource in it.


Another suggestion, which was the solution for me: I got the error in the line

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

in the values.xml file that was automatically generated during the build process.

It was solved by adding the android prefix in the styles.xml file.

<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>

had to be changed to

<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>

What fixed it for me that I haven't seen mentioned so far - if you have multiple 'flavors', make sure the currently selected 'build variant' matches the flavor for the layout file you're trying to view.


Anyone getting this error right after project import might be hitting an unsuccessful initial gradle import/sync. Usually it is encountered with serious errors (blinking exclamation mark in the lower right corner). For me this was the very strange cause (project folder was symlinked): https://stackoverflow.com/a/52952148/44166


I encountered same problem in opening android React Native Project in Android Studio.

근본 원인은 React Native Project의 android 폴더 대신 React Native Project의 루트 폴더를 열었 기 때문입니다 .

React Native Project의 android 폴더에서 프로젝트를 다시 열면 문제가 해결되었습니다.


안드로이드 트래커 플러그인을 설치하십시오. 스튜디오에서 찾을 수 있습니다.

스튜디오를 다시 시작

참고 URL : https://stackoverflow.com/questions/16883427/why-is-android-studio-reporting-uri-is-not-registered

반응형