파이어베이스에서의 업데이트가 7월 8일날 있었고 이로 인해 아래의 코드가 사용 불가능한 상태가 되었다.
이를 참고하고 진행하도록 하자.
파이어베이스 세팅 과정에 대한 것은 생략하고, 안드로이드 기준으로 파이어베이스가 제대로 세팅되었는지부터 확인해보자.
Build Setting에서 안드로이드로 설정을 바꾸면 아래와 같이 화면이 뜬다.
이것을 활성화하고 아래의 경로에서 Force Resolve를 진행한다.
아래와 같이 뜨면 잘 세팅된 것이다.
파이어베이스를 세팅하면 위와 같은 화면이 뜰 것이다. 내용을 살펴보면 Initialize를 위한 세팅을 하지 않으면 초기화가 실패할 것이라고 적혀있다.
Project Setting에 들어가면 Other Setting에서 이와 같이 경고가 떠 있는 것을 확인할 수 있다. 여기서 이 부븐에 넣어야 할 패키지 이름은, 파이어베이스를 만들 당시에 설정했던 패키지 이름과 동일하게 설정해야 한다.
(이 부분과 동일하게 설정한다)
Minimum API Level은 9.0 이상으로 설정해준다.
안드로이드 기준으로 Scripting Backend는 프레임워크는 C++, Interface definding으로 해서 그 위에서는 Java로 돌아가기 때문에 유니티의 C# 체계와 그다지 호환성이 좋지 않다. 따라서 IL2CPP로 변경하는 것이 좋다.
Target Architecture는 ARM64 까지 체크한다.(모바일 기준)
이와 같이 세팅한 후에 빌드를 진행해본다.(빌드가 제대로 진행되는지 확인하는 과정)
앞선 과정에서 빌드가 제대로 된 것을 확인하고 나서, 다음으로 Publish Setting을 진행해야 한다
Build Setting에서 안드로이드로 설정했을 때에만 이와 같이 Publish Setting이 있는 것을 확인할 수 있다.
안드로이드 어플들은 그 소유자가 서명을 한 상태에서만 Publish 를 진행할 수 있고, 이에 대한 Keystore라는 비밀번호 서명 체계를 가지고 있다. 따라서 Publish를 하기 위해서는 이와 같은 Keystore를 설정해줘야 한다.
Keystore Manager를 통해 Keystore 를 만들어보자.
Keystore 파일은 열쇠와 같은 것이므로, 실수로 지우거나 유출되지 않도록 유의한다.
필수적으로 입력해야 하는 것은 다음과 같다.
키를 만들면 이와 같이 키를 프로젝트에 바로 반영할지 확인 과정을 거치며, 바로 적용해도 된다.
다음으로 해당 Keystore를 통해서 SHA-1 지문을 추출한 다음 설정해야 한다.
Keystore에서 SHA-1 지문을 추출하기 위해서 터미널에서 열어야 한다.
하지만 여기서 Unity만 설치되어 있으면 keytool로 SHA-1 값을 추출하려 해도 되지 않는 것을 확인할 수 있다.
이는 keytool에 대한 환경 설정이 되어 있지 않아 발생하는 것으로, 환경설정을 해 줄 필요가 있다.
JDK를 다운 받아보자.
여기서 Installer 혹은 MSI Installer 중 하나를 다운받으면 된다.
그 다음 명령어를 다음과 같이 입력해보자.
이와 같이 keytool을 통해서 SHA-1 지문을 얻어낼 수 있다. 해당 지문을 파이어베이스에 넣어주면 호환된다.
로그인 방법에서 Play 게임즈 로그인까지 넣어보자.
다음으로 Google Play Console에서 앱 설정을 진행해야 한다.
설정을 차근차근 진행하고, 아래와 같이 두 가지 선언에 대한 부분도 체크를 하고 진행한다.
개발자 프로그램 정책의 경우 명의 도용, 부적절한 콘텐츠 등의 사항에 결격되지 않도록 한다는 것에 동의한다는 내용이다. 미국 수출법의 경우에는, 국내법에는 저촉되지 않지만 미국 수출법에 저촉될 경우 앱 출시에 제한이 될 수도 있다는 사항이 적혀 있다.
이와 같은 사항으로 인해 한 번에 앱 출시가 되지 않고 Reject 될 수도 있는데 이와 같은 내용을 감안하고서 앱 생성을 진행하도록 하자.
앱 생성을 진행하고 나면 앱 출시 절차를 위한 과정이 상세히 설명되어 있으며, 해당 절차에 따라 진행하면 된다. 순서대로 진행해도 되며, 순서를 꼭 지키지 않아도 된다.
해당 프로젝트가 구글 클라우드 프로젝트로 만든 적이 없다면 이와 같이 새 클라우드 프로젝트로 만들기를 선택한다.
다음으로 OAuth 동의 화면을 만들어보자.
초기 화면이 이와 같이 되어 있는 것을 확인할 수 있으며, 설정한 프로젝트 이름이 뜨는 것을 확인하고서 진행하자.
프로젝트 구성에 대한 내용은 앱 정보, 사용자 이메일, 앱 사용 대상자, 연락처 정보 등을 입력하고 마지막으로 정책까지 동의를 한 이후에 만들 수 있다.
다음으로 사용자 인증정보를 추가해보자.
Android와 게임서버에 대한 인증정보를 추가해야 한다.
해당 인증정보를 만들기 위해서 OAuth에서 클라이언트 ID를 만들어야 한다.
클라이언트를 만들고 나면 이와 같이 클라이언트가 생성되었고, 클라이언트 보안 비밀번호를 담은 JSON 파일을 다운받을 수 있다.
유의해야 할 사항으로, 해당 JSON 파일을 분실하면 다시 발급이 불가하고, 키가 유출되면 보안 상의 위협이 되므로 잘 보관하도록 한다.
이와 같은 방식으로 웹 클라이언트가 추가되었고, 게임 서버 유형에 웹 클라이언트가 연결되었는지 확인해본다.
다음으로 안드로이드 클라이언트도 따로 생성하여 똑같이 진행한다. 다만 안드로이드 클라이언트 같은 경우는 추가로 입력해야 할 내용이 있으니 참고하도록 하자.
두 가지 모두를 진행했으면 이와 같이 화면이 뜰 것이다.
게임 제목, 게임 설명, 아이콘, 썸네일 등을 등록한다.