[flutter] 플러터 파이어베이스 셋팅: 키생성 및 key.properties 관련 팁
키툴(keytool)을 이용해서 디버그 키, 릴리즈 키를 생성해준다.
keytool -genkeypair -keyalg rsa -keystore debug.keystore -alias debug
-validity 옵션을 생략하고 그냥 생성하면 유효기간이 default로 90일로 셋팅이 된다.
추후에 배포를 하려면 릴리즈 키는 필히 생성을 해야하지만, 디버그 키는 따로 생성해서 관리하면서 사용하기 싫다면, 기본적으로 VS Code에서 해당 프로젝트를 한번이라도 Run을 했다면 C:\Users\사용자명\.android\debug.keystore 가 자동으로 생성이 되고(.android: 숨겨진 폴더) 자동으로 alias 는 androiddebugkey, storepass는 android, keypass도 android 가 된다.
-validity 옵션을 50년으로 설정했다. (debug키이므로 아~무 의미 없음)
키스토어를 생성하고 난 후 -v 옵션을 사용하지 않고 그냥 -list 옵션을 사용하면 SHA-256 인증서만 볼 수 있다. 파이어베이스에서 기본적으로 요구하는 것은 SHA-1이었는데, 그냥 둘 다 등록하자.
릴리즈 키 2개, 디버그 키 2개 총 4개를 등록했다. 처음부터 깔끔하게 모든 걸 진행했다면 google-services.json 파일을 한 번만 다운로드 받아서 끝내면 되는데 할때마다 헷갈려서 한 번에 끝나는 일이 없다. 인증서 지문 추가등 추가적인 셋팅변경이 있다면 google-service.json 파일을 다시 다운로드 받아서 프로젝트의 해당위치에 덮어쓰든지 아니면 내용만 복붙해서 저장해주자.
파이어베이스 콘솔에서 프로젝트를 선택한 후 프로젝트 개요 옆 설정버튼을 눌러 프로젝트 설정 안쪽의 내용을 작성하면 google cloud API console에 해당 프로젝트관련 정보가 자동으로 추가 된다.
생성이 잘 안되어서 공개 설정 쪽 공개용 이름을 한 번 더 수정하니
google cloud API console에 해당 프로젝트 생성이 잘 되었다.
프로젝트폴더/android/app 수준안에 릴리즈, 디버그 키스토어를 모두 넣었고, key.properties, local.properties 도 app수준안에 모두 넣어준다.
key.properties 내용
app 수준의 build.gradle
이런식으로 사용하면 편리하다.
끗