문제

방금 새로운 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);

왜요?

추신 : XML 파일이 이름이 있습니다 main.xml 아래에 res/layout/.

도움이 되었습니까?

해결책 7

윌이 옳았다

R은 귀하의> 리소스를 식별하는 데 사용되는 상수를 보유하는 자동 생성 클래스입니다. R.java 파일이없는 경우 (1.5 SDK와 함께 gen/eu.mauriziopz.gps/r.java in> Eclipse) 프로젝트를 닫고 재개하는 것이 좋습니다. (> Josef가 권장하는대로 "자동으로 빌드"를 선택합니다). 그것이 새로운 프로젝트를 시도하는 것보다 효과가 없다면, 문제가 다시 여기에 게시되면 여기에 다시 게시하면 더 자세하게 설명합니다.

그러나 나는 첫 번째 문제를 일으키는 또 다른 문제가 있음을 알았습니다. SDK 디렉토리의 도구에는 실행할 권한이 없었으므로 Eclipse에는 존재하지 않았으므로 구축하지 않았습니다. R.java 파일.

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

다른 팁

이 문제를 추적 한 후 Android 문서 에서이 메모를 찾았습니다.

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

*참고 : Eclipse는 때때로 자원을 사용하는 파일의 상단에 "import android.r"명령문을 추가하는 것을 좋아합니다. 특히 Eclipse에 가져 오기를 정렬하거나 관리하도록 요청할 때. 이것은 당신의 원인입니다 만들다 부수다. 이러한 잘못된 수입 명령문을 찾고 삭제하십시오.*

Android 샘플 자습서를 살펴 보는 동안 종종 Ctrl 키 + 옮기다 + 영형 "수입 구성"명령을 내리고 누락 된 가져 오기 명령문을 생성하십시오. 때로는 이것은 R.java 빌드 할 때 자동으로 생성되는 클래스.

r이 생성되지 않았거나 사라질 때마다 XML 레이아웃 파일의 문제가 발생했을 때마다 응용 프로그램이 구축되는 것을 방지했습니다.

당신이 얻을 때마다

R은 해결할 수 없습니다

그런 다음 확인하십시오 /res 디렉토리와 그에 약간의 오류가 있고 응용 프로그램이 구축되는 것을 방지하는 파일이 있어야합니다. 예를 들어, 레이아웃 파일이거나 누락 된 리소스로 인한 것일 수 있지만 이미 XML 파일에 정의되었습니다.

res/drawables-mdpi와 같은 폴더에 추가, 미사용 (!) 또는 참조되지 않은 (!) 이미지가있는 경우 파일 명명 규칙 ([A-Z0-9_.] 만 포함 할 수 있음) R.Java 클래스는 생성되지 않을 수 있으므로 다른 게시물의 체인을 유발합니다. 도움이되기를 바랍니다!

내 프로젝트는 R.Java.가 포함되어 있습니다. 처음에는 R.layout.main 작업이 좋습니다. 그러나 일부 코드를 추가 한 후에는 작동하지 않으며 오류는 R.Layout.Main이 해결할 수 없습니다. 문제는 무엇입니까? ?

수입품을보십시오. 가능성은 다음과 같습니다.

import android.R;

거기있을 게. 이 경우 프로젝트가 기본 Android 리소스 클래스가 아니라 / res / 폴더에서 자동 생성 된 것과 함께 R을 해결하도록 제거하십시오.

그리고이 문제를 일으킬 수있는 또 다른 것 :

새로운 ADT (22 절)를 설치했습니다. 생성을 중단했습니다 gen 포함 된 폴더 R.java. 이 솔루션은 Android SDK 관리자의 새로운 Android SDK 빌드 도구를 설치하는 것이 었습니다.

해결책이 발견되었습니다 여기

R.java 애플리케이션을 작성하는 동안 Android Eclipse 플러그인이 작성하는 파일입니다. R.java "gen"디렉토리 아래에 생성됩니다. 이 파일은 "RES"디렉토리의 정보에서 생성됩니다. "Project" -> "Clean ..."를 실행하면 Eclipse 메뉴에서 제거한 다음 재생됩니다. R.java 파일.

"R을 해결할 수없는"문제는 패키지 이름을 AndroidManifest.xml 파일. Android 패키지 이름을 사용하여 "Gen"디렉토리 아래에있는 하위 디렉토리를 작성합니다. R.java 파일.

Eclipse는 깨끗하게 실행하는 데 문제가있을 수 있습니다. R.java 파일은 Android 패키지 이름을 변경했을 때입니다. 하위 디렉토리의 이름을 바꿀 수 있습니다 gen 새 패키지 이름에 맞추거나 패키지 이름을 이전 이름으로 변경할 수 있습니다. 청소를 한 다음 패키지 이름을 원하는 새 이름으로 변경하십시오. 패키지 이름을 변경하는 동안 Eclipse가 빌드를 시도하는 것을 막는 경우 가장 잘 작동합니다. "프로젝트"메뉴 아래에서 "자동으로 빌드"하는 옵션을 선택 취소하고 "Clean"이 "Clean"이 "즉시 빌드를 시작 해야하는지"묻는 경우 상자를 선택 취소하여 변경 중에 빌드를 시도하지 않도록합니다. 패키지 이름. 이름을 변경 한 후 "자동으로 빌드"를 다시 켜질 수 있습니다.

당신의 경우에 주목하십시오 AndroidManifest.xml 파일 패키지 이름은 Java 패키지 이름과 일치하지 않으며 Eclipse가 자동으로 "가져 오기"u003Cyour Android package name> .r; "당신의 모든 선 .java R에 대한 참조가있는 파일 AndroidManifest.xml패키지 이름, 때로는 Eclipse가 추가 된 추가 가져 오기를 업데이트하지는 않습니다. 이 경우 Eclipse Refactoring을 사용하십시오 (대체 + 옮기다 + 아르 자형) Java 파일 중 하나의 가져 오기 명령문을 신규로 변경하려면 AndroidManifest.xml 패키지 이름. "자동으로 빌드"를 비활성화하는 동안이를 수행하는 것이 가장 좋습니다.

R은 자원을 식별하는 데 사용되는 상수를 보유하는 자동 생성 클래스입니다. R.java 파일이없는 경우 (1.5 SDK와 함께 Eclipse의 gen/eu.mauriziopz.gps/r.java 일 것입니다) 프로젝트를 마치고 재개하거나 프로젝트를 시작하는 것이 좋습니다. Josef가 권장하는대로 "자동으로 빌드"를 선택합니다). 그것이 새로운 프로젝트를 시도하는 것보다 효과가 없다면, 문제가 여기에 다시 게시하는 것보다 다시 시작되면 더 자세하게 설명 할 것입니다.

모든 파일을 닫고, 프로젝트를 정리하고, 일식을 다시 시작하십시오.

체크인 할 가치가 있습니다 AndroidManifest.xml. 속성 package 올바른 값이 있습니다.

그건:

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

당신이 그것을 바꾸면, R.java 다시 생성됩니다.

이 오류는 패키지의 루트 네임 스페이스와 다른 네임 스페이스에 활동을 추가하여 발생할 수 있습니다.

예를 들어, if com.example.myapp 패키지의 루트 네임 스페이스입니다. 그런 다음 활동을 추가 할 수 있습니다. com.example.myapp.activities 네임 스페이스.

"R은 해결할 수 없음"오류가 발생합니다.

활동의 기본 네임 스페이스에서 r 가져 오기를 고정하려면 다음과 같아야합니다.

import com.example.myapp.R;

이전 답변의 위대한 제안과 함께 Android 대상이 설정되어 있는지 확인하십시오.

  1. 프로젝트를 마우스 오른쪽 버튼으로 클릭하십시오
  2. 속성을 선택하십시오
  3. 왼쪽 메뉴에서 Android를 선택하십시오
  4. 적절한 프로젝트 빌드 대상 옆에 상자를 선택하십시오.
  5. 적용 및 확인을 클릭하십시오

편집 : 1 년 후 나는 또 다른 원인을 발견했습니다. .png 이미지와 같은 이름의 드로우 가능한 폴더에 .jpg 이미지가있었습니다. 내 코드 에서이 이미지를 참조하면 프로그램이 혼란스러워 야했으며 "R을 해결할 수 없음"오류를 제공했습니다.

Android 빌드 도구 양식 SDK 관리자를 설치했는지 확인하십시오.

프로젝트 마우스 오른쪽 버튼을 클릭하십시오. 속성-> Java BuildPath 라이브러리를 선택하고 Android-support.jar 다음 단계를 추가하십시오.

선택 순서 및 내보내기 탭보다 프로젝트-> 속성-> Java 빌드 경로로 이동하십시오. Android-Support .jar 라이브러리를 설정하고 목록 상단으로 확인하십시오. 깨끗하고 재건 .. 대부분의 경우에 작동합니다.

enter image description here

방금 백만 번째 로이 문제가 있었고 원인이 무엇인지 깨달았습니다. 이름에 대문자가있는 XML 파일을 만들었습니다. 모든 XML 파일 이름을 입력하십시오 /res 일치해야합니다 [a-z0-9\\._].

가장 간단한 솔루션 - 때로는 자동 생성기가 시작되도록 작업중인 XML 파일을 저장하면됩니다.

파일 (예 : main.xml)을 저장 한 다음 R.java 파일을 삭제하고 재생 된 R.java가 Resolve 문제를 해결하는지 확인하십시오.

R 생성 된 클래스입니다. 당신이 사용하는 경우 안드로이드 개발 도구 (ADT) 프로젝트가 구축 될 때마다 생성됩니다. '자동으로 빌드'가 꺼져있을 수 있습니다.

XML 파일 이름을 확인하십시오. 그들이 모두 소문자에 있는지 확인하십시오.

또한 이미지 리소스 이름도 모두 소문자인지 확인하십시오. JPG 파일의 이름으로 대문자가 있었는데 프로젝트에서 바로 해결되지 않은 오류가 발생했습니다.

이 오류는 내 X64 Linux Mint 설치에서 자랐습니다. 결과는 ADB 이진 ia32-libs 패키지가 설치되지 않았습니다. 단순히 실행됩니다 apt-get install ia32-libs 이클립스를 다시 시작하면 오류가 수정되었습니다.

X64 배포판에 IA32-Lib가없는 경우 멀티 아치로 가야합니다.

이 게시물에서 #4 및 #5를 확인하십시오.http://crunchbang.org/forums/viewtopic.php?pid=277883#p277883

이것이 누군가를 돕기를 바랍니다.

SDK 도구를 업데이트/설치해야 할 수도 있습니다. Android SDK 관리자를 다시 시작하고 새 항목을 설치하십시오. Android SDK Build-Tools. One Dewnete를 사용하여 하나의 작업을 수정하십시오.enter image description here

SDK 도구를 업데이트해야 할 수도 있습니다. Android SDK 관리자를 다시 시작하고 새 항목 인 Android SDK 빌드-툴을 설치하십시오.

enter image description here

나도이 문제가 있었다. 나는 실수로 "App_name"문자열 자원을 strings.xml 침묵 오류가 발생하는 파일. 다시 추가하면 R 클래스가 성공적으로 생성되었고 모든 것이 백업 및 실행되었습니다.

첫 번째 점검은 XML 레이아웃에 오류가 있거나 먼저 오류가 발생합니다.

그렇지 않으면 프로젝트에서 Junit 의존성을 제거하고 프로젝트를 재건하십시오.

enter image description here

새 XML 레이아웃 파일 이름을 소문자로 만들어보십시오. 예를 들어, 사용 my_file.xml 대신에 myFile.xml.

또 다른 이유 R.java 당신이 같은 디렉토리가있는 경우 자율성이 없을 수도 있습니다. Res/Drawable-HDPI, Res/Drawable-MDPI, 또는 Res/Drawable-LDPI.

1.6+는이 디렉토리에서는 괜찮은 것처럼 보이지만 1.5는 원하지 않습니다. 디렉토리를 제거했을 때 R.java 다시 나를 위해 자율성을 시작했습니다.

Android Top 메뉴 목록으로 이동하십시오. 클릭 짓다 메뉴, 빌드 아래에서 클릭하십시오 프로젝트를 재건하십시오.

enter image description here

나는 Android 8의 예를 가지고 있었고 Android 7 SDK를 사용하려고했습니다. 프로젝트를 닫고 응용 프로그램 폴더를 다시 열고 Android 8 SDK를 사용하기로 선택하면 R 파일을 찾을 수있었습니다. 도움이 되었기를 바랍니다.

제 경우에는 내 오류가 발생했습니다. AndroidManifest.xml. 다른 사람들은 귀하의 XML 파일에 오류가 없어야한다고 말했지만 RES/ 폴더 만 찾고있었습니다. 가능한 많은 오류를 찾고 수정하면 문제가 스스로 해결 될 수 있습니다.

종종 이것은 프로젝트를 만들 때 제공 한 MINSDK 버전 번호 때문입니다. 예시:

2.1이 최소가 되려면 Android 2.1이 실제로 API 레벨 7입니다.

다운로드하고 설치 한 SDK를 탐색 할 때 내가 말하는 내용을 볼 수 있습니다. SDK를 설치 한 장소로 이동하십시오 (C:\android-sdk-windows 예를 들어) 및 "플랫폼"이라는 폴더를 엽니 다. 폴더로 나열된 "Android-7"과 같은 것을 볼 수 있으며 열면 source.properties 텍스트 편집기와 함께 열 때 해당 플랫폼 버전을 표시하는 파일.

프로젝트를 만들고 "대상 빌드"API를 선택 해야하는 경우 "API 레벨"이라는 목록의 마지막 열에는 MINSDK 설정을 채울 때 원하는 숫자를 보여줍니다.

이것은 아마도 가장 일반적인 실수 중 하나 일 것입니다. R.java Project> Gen> Packagename> R.Java에서 생성되지 않습니다.

제거하다 main.out.xml. 나는 이것에 익숙하지 않지만 아직이 파일이 사용되는 것이 무엇인지 모르지만 문제를 제거하면 문제가 해결되었습니다.

불행히도 기존 질문 중 어느 것도 도움이되지 않았습니다. 내 문제는 플랫폼에 따라 보이므로 이것은 당신이있는 경우에만 효과가있을 수 있습니다. 우분투 64 비트 (저는 현재 Ubuntu 12를 사용하고 있습니다). 처음에 나는 이미 해결책을 암시 한 "문제"창을 보지 못했습니다. 64 비트 환경에서는 32 비트 리브가 필요합니다.

sudo apt-get IA32-libs 설치

패키지를 설치하고 프로젝트를 재건하여 문제를 해결했습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top