본문 바로가기
IT

[Android] Firebase Google Social Login시 R.string.default_web_client_id 오류 & 해결방안

by MadebyAn 2022. 10. 8.
반응형

Firebase를 이용하여 Google Social Login을 생성할 때, 다양하게 오류들이 발생하곤 합니다. Firebase에 문제가 있어서가 아니라, 기본 설정에 따라서 발생할 수 있는 오류들이기 때문에 정확한 확인 필요합니다.

 

[오류 상황]

 

Firebase Authentication(인증)을 통해 구글 로그인 기능을 구현하는 과정에 "R.string.default_web_client_id"의 ."default_web_client_id"라는 이름의 문자열 리소스를 참조해야하는데, 이것은 프로젝트 리소스에 해당 문자열 리소스가 없어서 발생하는 것입니다.

 

 

[오류 해결]

 

1. "google-services.json"파일 체크 후 Rebuild Project.

 

- google-services.json 파일을 복사해서 붙여 넣기를 한 후에 아직 프로젝트에서 google-services.json 파일을 인식하지 못했을 때, 발생하곤 합니다.

 

- Firebase에서 Android App을 연동할 때, 반드시 해당 안드로이드 프로젝트에 추가해줘야하는 파일로써 Firebase Console에 가서 해당 프로젝트 → 프로젝트 설정에서 확인하고 다운받을 수 있습니다.

google-services.json 파일 다운로드 & AndroidStudio에 추가하기.

- "google-services.json" 파일 추가한 것을 확인했다면 프로젝트에서 제대로 인식할 수 있도록 Rebuild를 시켜줍니다.

- 상단 메뉴에서 [Build]에 들어가면 제일 하단에 [Rebuild Project]를 클릭하면 됩니다.

- 이렇게 되면 완성.

 

[추가]

이렇게 했음에도 불구하고 안될때는 , dependencies를 수정해줘야 합니다.

- 최신 버전으로 진행했을때, 지금같은 오류(에러)가 나타나는 경우가 많습니다.

- 현재 최신버전

dependencies {
        classpath 'com.google.gms:google-services:4.4.1'
    }

 

하지만, 이 버전에서 에러가 발생하니 버전을 4.3.13으로 변경합니다.

dependencies {
        classpath 'com.google.gms:google-services:4.3.13'
    }

 

이렇게 변경해주면 큰 문제 없이 오류가 해결될 것입니다.

 

[Rebuild를 할때 추가적으로 발생할 수 있는 오류]

1. tagetSdk version이 낮아서 발생하는 오류.

 

- Rebuild를 했는데, 오류가 발생. 

- tagetSdk version이 최소 34이상을 원함.

 

- 그래서 tagetSdk version을 34로 변경했더니, 위에 compileSdk 33이 오류가 발생.

 

- 그래서 compileSdk도 34로 version을 올려줍니다.

 

항상 화이팅입니다~^^

반응형

댓글


loading