source

R을 해결할 수 없음 - Android 오류

nicesource 2023. 2. 6. 23:58
반응형

R을 해결할 수 없음 - Android 오류

저는 방금 새로운 안드로이드 SDK를 다운로드하여 설치했습니다.시승할 수 있는 간단한 어플리케이션을 만들고 싶었습니다.

마법사에서 다음 코드를 만들었습니다.

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);
    }
}

하지만 이클립스는 나에게 오류를 준다.

R을 확인할 수 없습니다.

온라인.

setContentView(R.layout.main);

왜요?

PS라는 이름의 .main.xml아래res/layout/.

이 문제를 추적한 결과 Android 문서에서 다음과 같은 메모를 발견했습니다.

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

*주의: Eclipse는 "Import Android"를 추가하는 것을 좋아합니다.특히 Import를 정렬하거나 관리하도록 요청할 때 리소스를 사용하는 파일 맨 위에 있는 R" 문.이렇게 하면 화장이 깨질 거예요.이러한 잘못된 Import 스테이트먼트를 확인하고 삭제해 주세요.*

Android 샘플 튜토리얼을 볼 때 + + 명령을 사용하여 "Organization Imports"와 누락된 Import 스테이트먼트를 생성하는 경우가 많습니다.경우에 따라서는 잘못된 Import 스테이트먼트를 생성하여R.java빌드 시 자동으로 생성되는 클래스입니다.

R이 생성되지 않거나 사라지거나 하는 문제가 발생할 때마다 이는 XML 레이아웃 파일에 문제가 발생하여 어플리케이션이 빌드되지 않았기 때문입니다.

언제든지

R을 확인할 수 없습니다.

./res디렉토리에 오류가 있어 응용 프로그램을 빌드할 수 없는 파일이 있을 수 있습니다.예를 들어 레이아웃 파일일 수도 있고 누락된 리소스가 있을 수도 있지만 XML 파일에 이미 정의되어 있을 수도 있습니다.

res/drawables-mdpi 등의 폴더에 파일 명명 규칙에 준거하지 않는 추가 이미지, 심지어 사용하지 않는 이미지(!) 또는 참조되지 않은 이미지(!)가 있는 경우([a-z0-9_].만 포함) R.java 클래스가 생성되지 않고 다른 모든 게시물이 참조하는 이벤트 체인이 발생할 수 있습니다.

제 프로젝트에는 r.java.at의 시작, R.layout.main work good가 포함되어 있습니다.그러나 일부 코드를 추가한 후 동작하지 않으며 오류는 R.layout.main cannot resolve.main 입니다.문제가 뭐죠?

당신의 수입품을 보세요.다음 행이 있을 수 있습니다.

import android.R;

거기 있을 거야이 경우 기본 Android Resources 클래스가 아니라 /res/ 폴더에서 자동으로 생성된 클래스로 R을 해결할 수 있도록 제거합니다.

그리고 이 문제의 원인이 될 수 있는 또 다른 것은 다음과 같습니다.

ADT (v.22) 。 이상 않게 되었습니다.gen 포함하는 R.javaAndroid SDK Manager Android SDK 빌드 도구

솔루션은 이쪽

윌의 말이 옳았어

R은 자원 식별에 사용되는 상수를 유지하는 자동 생성된 클래스입니다.R.java 파일이 없는 경우(1.5 SDK를 사용하는 경우 > Eclipse의 gen/eu.mauriziopz.gps/R.java) 프로젝트를 닫았다가 다시 열거나 > Project > Build all로 이동하거나 > Josef에서 권장하는 대로 "Build Automaticall"을 선택하는 것이 좋습니다.새로운 프로젝트를 작성하는 것만으로 문제가 해결되지 않는 경우는, 다시 여기에 투고해 주세요.자세한 내용은 이쪽에서 설명하겠습니다.

실행 에는 이 하지 않는 에, SDK를 빌드하지 않았습니다R.javafilename을 클릭합니다.

따라서 권한을 수정하고 "자동으로 빌드"를 선택하면 문제가 해결되었습니다.

R.java안드로이드 이클립스 R.java.gen 에서 해결하다[프로젝트]-> [깨끗]-> [깨끗하다]R.javafilename을 클릭합니다.

" 는 "R cannot resolve"에서 합니다.AndroidManifest.xml은 Android 하여 "에 서브 .이 에는 "gen"이 되어 있습니다.R.javafilename을 클릭합니다.

이클립스가 에 깨끗하게 수 있습니다.왜냐하면 이클립스가 어디에 있는지 혼란스럽기 때문입니다.R.java★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★」을 변경할 수 .gen새 패키지 이름과 일치하거나 패키지 이름을 이전 이름으로 다시 변경할 수 있습니다.을(를) 치료한 다음 패키지 이름을 원하는 새 이름으로 변경하십시오.패키지 이름을 변경하는 동안 Eclipse의 빌드 시도를 중지하는 것이 가장 좋습니다.프로젝트 "자동 빌드" "클린.." "" " 하는지 를 묻습니다" 대화 상자에서 패키지 이름을 변경하는 동안 빌드하지 않도록 "즉시 빌드 시작" 확인란을 선택 해제할지 여부를 묻습니다.이름을 변경한 후 "자동으로 빌드"를 다시 켤 수 있습니다.

해 주세요.AndroidManifest.xml일일 、 Java 、 는는Eclipse 、 " import < your Android package name > " 。 R;" 행입니다..javaR-R-R-R-R-R-R-R-R-R-R-R-R-R-R-R-R-R-AndroidManifest.xml패키지 이름. 경우에 따라 Eclipse가 이러한 추가된 가져오기를 모두 업데이트하지 않을 수 있습니다.이 경우 Eclipse 리팩터링(ALT + + )을 사용하여 Java 파일 중 하나에서 Import 문을 새 파일로 변경하십시오.AndroidManifest.xml빌드」를 로 하고 동안, 이것을 .이 작업은 "자동으로 빌드"를 비활성화한 상태에서 수행하는 것이 가장 좋습니다.

R은 리소스를 식별하는 데 사용되는 상수를 유지하는 자동 생성된 클래스입니다.R.java 파일이 없는 경우(1.5 SDK를 사용하는 이클립스에서는 gen/eu.mauriziopz.gps/R.java) 프로젝트를 닫았다가 다시 열거나 Josef가 권장하는 대로 Project > Build all로 이동하는 것이 좋습니다.새로운 프로젝트를 작성하는 것 이상으로 문제가 해결되지 않는 경우는, 여기에 다시 투고하는 것보다 문제가 재현되는 경우는, 한층 더 자세하게 설명합니다.

모든 파일을 닫고 프로젝트를 정리하고 이클립스를 다시 시작합니다.

해 볼 AndroidManifest.xml. " " " "package올바른 값을 가지고 있습니다.

즉, 다음과 같습니다.

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

하면, 「 」는R.java시시시생생생다다

이 오류는 패키지의 루트 네임스페이스와 다른 네임스페이스에 액티비티를 추가하는 경우에도 발생할 수 있습니다.

를 들어, 「」의 ,com.example.myapp패키지의 그 후, 를 「」에 추가할 수.com.example.myapp.activities임스스네

그러면 "R cannot be resolve" 오류가 발생합니다.

액티비티의 디폴트네임스페이스에서 Import를 수정하려면 , 다음의 순서를 실행합니다.

import com.example.myapp.R;

이전 답변의 훌륭한 제안과 함께 Android 목표가 설정되어 있는지 확인하십시오.

  1. 프로젝트를 오른쪽 클릭합니다.
  2. 속성 선택
  3. 왼쪽 메뉴에서 Android를 선택합니다.
  4. 적절한 프로젝트 빌드 대상 옆에 있는 상자를 선택합니다.
  5. [적용(Apply)]를 클릭하여 [OK]을 클릭합니다.

편집: 1년 후 다른 원인을 발견했습니다..png 이미지와 같은 이름의 .jpg 이미지가 드로잉 가능한 폴더에 있었습니다.코드로 이 이미지를 참조하면 프로그램이 혼란스러워서 "R cannot be resolve" (R을 해결할 수 없습니다) 오류가 나타납니다.

Android 빌드 도구 폼 sdk manager를 설치했는지 확인합니다.

project 우클릭 -> Java BuildPath 를 선택하고 다음 절차를 따릅니다.

[ Order and export ]탭을 선택하고 [Project]-> [ Properties ]-> [ Java Build Path ]으로 이동합니다.Android-support .jar 라이브러리를 체크하여 목록 맨 위에 표시합니다.그리고 청소하고 다시 짓는다..대부분의 경우 효과가 있습니다.

여기에 이미지 설명 입력

이 문제가 발생한 것은 몇 백만 번이고, 그 원인을 알 수 있었습니다.이름에 대문자가 들어간 XML 파일을 작성했습니다. 내의 모든 XML /res.[a-z0-9\\._].

가장 간단한 해결책 - 작업 중이던 XML 파일만 저장하면 자동 생성기를 시작할 수 있습니다.

파일(예를 들어 main.xml)을 저장한 후 R.java 파일을 삭제하고 재생성된 R.java가 R 해결 문제를 해결하는지 확인합니다.

XML 파일명을 확인합니다.모두 소문자여야 합니다.

또한 모든 이미지 리소스 이름이 모두 소문자여야 합니다.제 jpg 파일 이름으로 대문자를 썼는데, 그것이 바로 제 프로젝트 전체에 R 미해결 오류를 일으켰습니다.

R는 생성된 클래스입니다.ADT(Android Development Tools)를 사용하는 경우 프로젝트가 빌드될 때마다 생성됩니다.'자동 빌드'가 꺼져 있을 수 있습니다.

x64 Linux Mint 설설 linux 。이 판명되었다.ADB바이너리, 'Binary', 'Binary'이기입니다.ia32-libs이치노 " " " " 를 실행합니다.apt-get install ia32-libs이클립스를 다시 실행하면 오류가 수정되었습니다.

x64 디스트로에 ia32-libs가 없는 경우 Multiarch를 사용해야 합니다.

이 투고에서는 4번과 5번을 체크해 주세요.http://crunchbang.org/forums/viewtopic.php?pid=277883#p277883

이게 도움이 됐으면 좋겠네요.

SDK 도구를 업데이트/설치해야 할 수 있습니다.Android SDK Manager를 다시 시작하고 새 항목을 설치합니다.Android SDK Build-tools.여기에 이미지 설명 입력 1개씩 삭제하여 어느 것이 적합한지 수정합니다.

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★로 "가 "에서 되었습니다.strings.xml파일이 사일런트 에러의 원인이 되고 있었습니다.다시 추가하자 R 클래스가 정상적으로 생성되어 모든 것이 백업되어 실행되었습니다.

SDK 도구를 업데이트해야 할 수 있습니다.Android SDK Manager를 다시 시작하고 새 항목을 설치합니다.Android SDK 빌드 툴.

여기에 이미지 설명 입력

새 XML 레이아웃 파일 이름을 소문자로 입력하십시오.를 들어, 「」를 합니다.my_file.xmlmyFile.xml.

이유R.javares/drawable-hdpi, res/drawable-hdpi 또는 res/drawable-hdpi 등의 디렉토리가 있는 경우 자동 생성되지 않을 수 있습니다.

이러한 디렉토리는 1.6+로 문제가 없는 것 같습니다만, 1.5는 그것을 원하지 않습니다.때, 「 」 「 」 「 」 「 」 「 」 「 」R.java자동생성이 다시 시작됐어요

대부분의 경우 프로젝트 생성 시 제공한 MinSDK 버전 번호 때문입니다.예:

2.1을 최소한으로 하고 싶다면 Android 2.1은 사실 API 레벨7입니다

다운로드하여 설치한 SDK를 참조하면 무슨 말인지 알 수 있습니다. 를 한 (SDK 의 인스톨처로 합니다.C:\android-sdk-windows폴더라고 합니다.하는 되고, 「Android-7」이라고 하는 것이 .source.properties이 파일은 텍스트 편집기로 열면 해당 플랫폼 버전이 표시됩니다.

프로젝트를 만들고 "Build Target" API를 선택해야 하는 경우 "API Level"이라는 이름의 이 목록의 마지막 열에 MinSDK 설정을 채울 때 찾는 숫자가 표시됩니다.

은 아마 중 일 것입니다.R.java[ ]> [ ]> [ ]> [ Project ]> [ ]> [ packagename ]> [ R . java ]에서.

하다.main.out.xml이 파일은 처음이라서 아직 어떤 용도로 사용되는지 모르겠지만 삭제하면 문제가 해결됩니다.

Android Top 메뉴 목록으로 이동합니다.빌드 메뉴를 클릭하고 빌드 아래에서 프로젝트 재구성을 클릭합니다.

여기에 이미지 설명 입력

먼저 xml 레이아웃에 오류가 있는지 여부를 확인합니다.이러한 문제를 먼저 해결합니다.

그렇지 않으면 프로젝트에서 연결 종속성을 제거하고 프로젝트를 재구축합니다.

여기에 이미지 설명 입력

있는 분(여기서 당신의 수 도 모릅니다)이제 입니다.R.xmlGLS 프로젝트에서는 약간 다르므로 해결할 수 없습니다. 음을 난 후.R.java 생성 클래스인 동동를 찾았습니다XML.java(서양속담, 노력속담) 을 하다

해결책?새로운 폴더가 필요했습니다.resres\xml이라는 파일도 있어요.default_values.xml다 괜찮았네요.츠미야

만약 당신이 그 파일을 가지고 있지 않다면, 그것은 다음과 같습니다.

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

따라서 빌드 타깃을 전환할 때 이 문제가 여러 번 발생했습니다.프로젝트 >> 청소는 보통 효과가 있었습니다.하지만 지난번에는 그렇지 않았다.마지막으로 루트 프로젝트 폴더 아래에 있는 default.properties 파일을 열려고 했습니다.파일 시스템과 동기화되지 않았다는 오류 메시지를 받았습니다.실제로 삭제하고 동료 버전을 복사하여 이클립스를 사용하여 R 파일을 재구축했습니다.아래 그림과 같이 붙일게요.이름은 'default.properties'입니다.

# This file is automatically generated by Android Tools.
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
# 
# This file must be checked in Version Control Systems.
# 
# To customize properties used by the Ant build system use,
# "build.properties", and override values to adapt the script to your
# project structure.

# Indicates whether an apk should be generated for each density.
split.density=false
# Project target.
target=android-3

Android 8의 예를 들어 Android 7 SDK를 사용하려고 했습니다.프로젝트를 닫고 어플리케이션 폴더를 다시 열어 Android 8 SDK를 사용하기로 선택했을 때 R파일을 찾을 수 있었습니다.이게 도움이 됐으면 좋겠다.

언급URL : https://stackoverflow.com/questions/885009/r-cannot-be-resolved-android-error

반응형