본문 바로가기
Android 개발/android :: warning & error

[안드로이드] error - Cannot resolve symbol R - 해결 방법들

by 독학하는 1인 개발자 2019. 8. 27.

Android 개발 Warning과 Error

 

- Android Cannot resolve Symbol R

 

R파일 오류 해결 방법

 

 

 

 

 

 

 

안드로이드 오류 중 가장 짜증나고 왜?싶은 오류다.

당장 오류가 떴을 때

해결책이 명확하지 않은 게 문제이다.

 

 

R파일이란?

: R파일은 여러 리소스들 즉 이미지, 아이콘, 레이아웃 등등에 접근할 주소값을 자동생성해서 가지고 있는 파일이다.

 

그래서 혹시 저 파일 이름에 오류가 있는 경우에도 R 파일 오류가 뜬다.

 

 

주의 1>

리소스 파일의 이름에는 대문자특수문자가 허용되지 않는다.

특히 이미지 파일을 넣을 때

파일 이름에 대문자가 들어가거나 숫자로 시작하면 안 된다.

 

주의 2>

또 주의 할 점은

오류 부분에 마우스를 올리면 왼쪽에 뜨는 해결책을 클릭하지 않도록 한다.

그 해결책에서 설정하라는 R 파일은 우리가 고쳐야 할 R 파일이 아니다.

 

주의 3>

또한 Manifests 파일에서 , 괄호 등도 확인해본다.

다음과 같이 점을 써줘야 하는데 빠트리는 경우도 있다.

 

MainActivity 앞에 . 을 확인하자.

 

 

또한 특정 리소스 파일을 삭제했는데

만일 그게 필요한 경우라면 당연히 오류가 뜰 수 있다.

 

 

그래서 리소스 파일을 삭제할 때는 항상 백업을 해두는 습관이 중요하고

해당 리소스 파일이 자바 파일 내에서 사용되는지 꼭 확인해두자.

 

 

 

이렇게 우선 오타 확인, 제거 파일 확인 등을 해 본 후

다음 과정을 거쳐본다.

 

 

그럼 해결 방법들을 알아보자.

 

 

 

1. 가장 간단한 방법

[Build] - [Clean Project] 실행 후

[Build] - [Rebuild Project] 실행해보기

 

 

고작 이정도로 안 고쳐질 확률이 높지만, 

가끔 간단한 경우에는 되기도 한다.

 

 

 

 

2. 재시작 방법

[Build] - [Invalidate Caches / Restart]

 

 

이 방법으로도 고쳐지지 않는다면

 

업데이트를 체크해본다.

 

 

 

 

3. 업데이트 체크 후 다운그레이드

아주 최근 sdk나 gradle 업데이트를 했다면

다시 다운그레이드를 해보자.

 

최근에도 gradle 업데이트를 했다가

Activity 파일로 돌아가니까

망할 빨간 색이 쭉 뜨면서

Cannot resolve symbol R 가 뜬 적이 있다.

gradle 버전을 이전 버전으로 다시 내려주니까 정상적으로 돌아왔다.

 

 

 

이렇게 여러 방법으로 해봐도 안 되면

미처 발견하지 못한 오탈자네이밍 규정 오류일 가능성이 사실 가장 높다.

 

군대 탄피찾기 게임이 시작되는 것이다.

 

 

 

댓글