Flutter #50 - Firebase google sign in - SHA1 지문 생성 (MAC m1)

Pearl Lee·2022년 11월 7일
1

Flutter & Firebase

목록 보기
1/1

Flutter 일기 50번째.



Firebase Google Sign-in

Flutter 앱에서 사용자 인증을 위해 Firebase의 Google Sign-in을 사용할 경우, SHA1이라는 디지털 지문이 필요하다. SHA-1 cli 안내

그리고 나처럼 백지의 맥에서 SHA-1 얻으려고 하면, 당연히 안 된다.

JAVA가 없어서^^ JDK를 설치해야 한다.





1. JDK 설치

JDK는 Java Development Kit의 약자인데, 자바 개발 키트, 즉 개발 도구들을 포함하고 있다.
JDK를 찾다보면 JRE가 꼭 같이 나오는데, JRE는 Java Runtime Environment의 약자로, 자바로 만들어진 프로그램을 실행하는 역할을 한다. 개발을 위해 JDK 설치방법이 더 많이 검색되는 듯하다.

(참고 : 코딩팩토리 블로그, GeeksforGeeks - JDK, JRE, JVM )

Windows에는 Oracle JDK를 깔았는데, 공식 사이트 가서 zip파일 받아서 풀고 환경변수 설정하는 방식으로 설치했었다. 하지만 이번 mac에서는 iterm2도 예쁘게 꾸며놨으니 homebrew를 이용해서 OpenJDK를 깔아보려고 한다. Oracle JDK vs OpenJDK




AdoptOpenJDK 에 따르면.. 지금은 버전11이 LTS(Long Term Support)라고 하네

homebrew-openjdk github 여기를 참고해서 설치했다. 근데 입력한 건 두 줄 밖에 없음.

$ brew tap AdoptOpenJDK/openjdk
$ brew install --cask adoptopenjdk11

버전11의 openJDK 설치가 잘 되었다.

~/.bashrc나 ~/.zshrc 수정은 여러 개의 JDK버전을 깔았을 때, 특정 버전을 사용하려고 하면 수정해야 한다. 난 하나만 깔았으므로 패스. 깃헙에 추가해야 할 내용 나와있음!

+) 설치하다가 cask라는 명령어가 궁금해서 찾아보았다. 그냥 앱 설치를 cli로 쉽게 할 수 있도록 해주는 거라고 하는구만. 공식 깃헙 내용을 못알아들어서... 한글로 설명해준 블로그를 찾았다.
homebrew --cask






2. Keystore 생성

그리고 처음의 명령어를 다시 입력해 키를 구하려고 하면... 여전히 구해지지 않는다. 키 저장소 파일이 없음.

저기 키 저장소 파일이 존재하지 않음 - 옆으로 뜨는 경로

/Users/사용자이름/.android/debug.keystore
이러한 경로를 가진 키 저장소가 있어야 한다.





구글에 뒤져보다가 keytool -genkey하면 된대서 따라 쳤다가, 경로를 제대로 설정하지 않아서 실패 home 경로에 알 수 없는 keystore하나 생성됨... 이건 지웠다. ㅠㅠ
(요렇게 정보를 자세하게 띄우려면 ls 말고 l 치면 다 뜬다.)




다시 찾아서
2019년에 똑같은 문제를 겪은 분이 있다
그 분이 여기를 소개 : StackOverFlow - no debug keystore
그리고 그 명령어를 그대로 넣어주었다. 어차피 출시용 아니구 디버그용이니까... 대충 설정하기로 하고, 명령어를 수정하지 않은 채로 그대로 넣었다.

keytool -genkey -v -keystore ~/.android/debug.keystore -storepass android \
-alias androiddebugkey -keypass android -dname "CN=Android Debug,O=Android,C=US"

키 저장소 비밀번호 입력하라고 뜨는데, 명령어에 보면 -storepass android라고 설정한 걸 알 수 있음. 그대로 android 라고 치면 된다.
keytool 명령어가 궁금하다면, Java keytool 사용법 여기에 잘 나와있었다.

^^ 이제 저 SHA1 옆에 뜨는 00:00:.... 이걸 복사해서 Firebase에 갖다주면 끝.



Mac에서의 JDK설치와 Keystore생성을 한 번에 다룬 글을 찾질 못해서... 써 보았다.
왜 다들 JDK를 설치해 놓은거요? 나만 JDK 없었냐고...?

profile
안 되면 되게 하라

0개의 댓글