Unity)Firebase) Google Auth 연동
Firebase Google Auth 연동
Firebase Console에서 Authentication의 Sign-in method 항목의 로그인 제공업체를 Google을 추가한다.
Unity - Google Signin Package를 import 한다 : [링크]
GitHub - playgameservices/play-games-plugin-for-unity: Google Play Games plugin for Unity
Google Play Games plugin for Unity. Contribute to playgameservices/play-games-plugin-for-unity development by creating an account on GitHub.
github.com
Google에 로그인하는 과정에선 SHA -1이 필요하기 때문에 Sign을 해야한다.
Android 앱에 Google로 로그인 : [링크]
Android 앱에 Google 로그인 통합 시작 | Google Sign-In for Android
이 페이지는 Cloud Translation API를 통해 번역되었습니다. Switch to English Android 앱에 Google 로그인 통합 시작 자체 앱에서 Google 로그인 통합을 시작하려면 먼저 Google API 콘솔 프로젝트를 구성하고 Androi
developers.google.com
jdk 경로의 bin에서 SHA-1을 생성 해야 한다.
JDK 경로 : C:\Program Files\Unity\Hub\Editor\2020.3.14f1\Editor\Data\PlaybackEngines\AndroidPlayer\OpenJDK\bin
keytool -list -v -keystore C:\WORKSPACE\FirebaseTest\FirebaseTest\user.keystore
keytool -list -v -keystore [키스토어경로]
해당 SHA1 키를 Firebase에 연결해야 한다.
SHA1 키도 등록이되면 실제 구글로그인이 되고 Firebase와 Google 계정이 연결되는지 확인해본다.
public async Task<string> GoogleServiceLogin()
{
TaskCompletionSource<string> task = new TaskCompletionSource<string>();
if (!Social.localUser.authenticated) // 로그인 되어 있지 않다면
{
Social.localUser.Authenticate(success => // 로그인 시도
{
if (success) // 성공하면
{
Debug.Log($"{LOG} Google Play Login Success");
string idToken = ((PlayGamesLocalUser)Social.localUser).GetIdToken();
task.SetResult(idToken);
}
else // 실패하면
{
Debug.Log($"{LOG} Fail");
}
});
}
return await task.Task;
}
빌드에서도 정상적으로 동작하는것과 Google Auth로 되는것을 확인했다.
이후에는 구글 리더보드 및 업적에 대해서도 테스트할 예정이다.
★★☆☆☆