Flutter

[Flutter] Firebase에 사용할 SHA1, SHA-256 확인하기

Lust3r 2024. 9. 26. 19:33
728x90

너무 삽질을 했어서 나중에 이런 상황이 발생하거나 도움이 필요한 사람들을 위해 메모

 

환경:

- Macbook Pro (M3 Pro) 14.6.1

- VS Code

 

1. 문제

- Firebase 전화 인증을 위해 구성하던 중, 안드로이드는 디지털 지문 추가를 해야 했다.

- 이를 위해 터미널에서 ./gradlew signingReport 를 사용했으나 java가 없다는 오류가 발생

- java 홈페이지에서 m시리즈용 8버전을 받았으나 'Could not resolve all files for configuration 'classpath'. 오류가 발생

- 이에 최신 버전인 23을 설치했으나 'Execution failed for task ':gradle:compileGroovy' 오류가 발생

- 오류 코드 중에 11버전이 있어 8과 23을 제거하고 11버전 설치했으나 'Build failed with an exception' 오류가 발생
   - Android Gradle plugin이 Java 17을 필요로 한다고 한다.

 

2. 해결

- (Homebrew가 설치되어 있다는 가정 하에) 터미널에서 다음 코드 입력

brew install openjdk@17

 

- 설치가 끝나면 기본 버전 설정 및 환경 변수 설정 가이드가 나오는데 해당 코드 입력

sudo ln -sfn /opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-17.jdk

echo 'export PATH="/opt/homebrew/opt/openjdk@17/bin:$PATH"' >> ~/.zshrc

(위는 예시일 뿐 터미널에 표기된 코드를 복붙하자)

 

이후 VS Code에서 터미널을 열고 cd android로 프로젝트의 android 폴더로 이동,

 

./gradlew signingReport

 

코드를 입력하면 잠시 뒤 결과가 출력되는데 스크롤을 조금 내리면 SHA1과 SHA-256을 확인할 수 있다.