Flutter

[Flutter] Unhandled Exception: PlatformException(sign_in_failed, com.google.android.gms.common.api.ApiException: 12500: , null, null)

에릭 Kim 2022. 11. 10. 10:20
반응형

Flutter에서 firebase를 활용한 google sign-in을 구현할 때 다음과 같은 에러를 만날 수 있습니다. 

 

Unhandled Exception: PlatformException(sign_in_failed, com.google.android.gms.common.api.ApiException: 12500: , null, null)

 

위와 같은 에러가 뜨는 이유는 몇가지가 존재합니다. 

 

1. SHA-1키 미입력

 

본인이 flutter 프로젝트에 연결한 firebase 프로젝트에 SHA-1키를 설정해주지 않으면 다음과 같은 에러를 만날 수 있습니다.

 

SHA-1키를 입력하는 곳은 firebase project를 선택 -> 프로젝트 설정에 들어가신 후, 디지털 지문 추가를 통해 SHA-1키를 추가하실 수 있습니다. 

 

이때, 자신의 SHA-1 키를 모르는 경우가 있을 수 있습니다. 

 

이러한 경우에는 cmd 혹은 개인의 터미널에서 다음 내용을 추가해주시면 됩니다

keytool -list -v -alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore

 

입력이 정상적으로 되면, 비밀번호를 입력해달라고 하는데 'android'를 입력해주신다면 자신의 SHA-1키와 SHA-256키를 확인하실 수 있습니다

 

2. 지원 이메일 입력하기

 

SHA-1키를 추가했음에도 에러가 사라지지 않는다면 지원 이메일 추가를 해줘야 할 수도 있습니다. 

 

SHA-1키를 추가해줬던 화면에서 조금 위로 올라가시면 다음과 같은 화면을 보실 수 있습니다. 

 

이 곳에 지원 이메일을 추가해주시면 됩니다.

 

3. firebase authentication sign-in method의 google sign-in 활성화 

 

google sign-in을 사용하고 싶으시다면 firebase 인증 방법에서 google을 활성화 시켜주셔야 합니다. 

 

4. Google Playstore 지원되는 emulator 사용하기

저의 경우에는 위의 방법들을 모두 정상적으로 입력했지만 에러가 계속해서 사라지지 않았습니다. 

 

터미널에 에러와 함께 google playstore가 지원되지 않는다는 알림이 있었지만, Sign-in과는 연관되지 않는다고 생각하여 신경쓰지 않았는데, 구글링을 하던 도중 emulator를 google play store가 지원되는 것으로 바꿔보라는 내용을 찾을 수 있었습니다. 

 

 

디바이스를 추가하실 때 play store가 체크되어 있는 디바이스를 발견하실 수 있습니다. 해당 디바이스를 선택하여 project를 빌드하시면 됩니다. 

 

https://stackoverflow.com/questions/56188338/platformexception-platformexceptionsign-in-failed-com-google-android-gms-comm

 

PlatformException (PlatformException(sign_in_failed, com.google.android.gms.common.api.ApiException: 12500: , null))

The line where is going to crash: GoogleSignInAccount googleUser = await _googleSignIn.signIn(); What have I tried: I've generated my SH1 key with this command keytool -list -v \ -alias

stackoverflow.com

 

반응형