반응형
오류 내용
모바일로 빌드 후 구글 로그인 버튼을 누르면 창은 뜨는데 로그인을 눌러도 아무 일도 일어나지 않는 현상
해결 방법
1. Google Play 게임 서비스 설정 확인
a. 구글 개발자 콘솔 설정
- OAuth 2.0 클라이언트 ID
- Google Developer Console에서 프로젝트를 생성하고 OAuth 2.0 클라이언트 ID를 발급받습니다.
- 발급받은 클라이언트 ID를 Google Play Console의 게임 서비스 설정에 추가합니다.
b. 구글 플레이 게임즈 설정
- 앱 연결
- Google Play Console에서 Play Games Services를 설정하고 Unity 앱과 연결합니다.
2. Unity에서 Google Play 게임 서비스 SDK 설정 확인
a. 구글 플레이 게임즈 SDK 설치
- SDK 다운로드
- GitHub에서 GPGS Unity Plugin을 다운로드하여 프로젝트에 추가합니다.
- SDK 설정
- Unity 메뉴에서 Window > Google Play Games > Setup > Android Setup을 클릭합니다.
- Resource Definition 파일을 다운로드하여 추가합니다.
- Package Name과 Class Name을 확인합니다.
3. 코드 설정 확인
GPGS 초기화 및 로그인 코드
using GooglePlayGames;
using GooglePlayGames.BasicApi;
using UnityEngine;
public class GooglePlayManager : MonoBehaviour
{
void Start()
{
PlayGamesClientConfiguration config = new PlayGamesClientConfiguration.Builder()
.RequestEmail()
.RequestIdToken()
.Build();
PlayGamesPlatform.InitializeInstance(config);
PlayGamesPlatform.Activate();
SignIn();
}
void SignIn()
{
Social.localUser.Authenticate((bool success) =>
{
if (success)
{
Debug.Log("Login successful!");
}
else
{
Debug.Log("Login failed!");
}
});
}
}
4. 빌드 설정 확인
a. Android 빌드 설정
- Player Settings
- Player Settings에서 Package Name이 Google Play Console과 동일한지 확인합니다.
- Internet Access가 Require로 설정되어 있는지 확인합니다.
- Proguard 설정
- Proguard를 사용하는 경우, GPGS 관련 규칙을 추가합니다.
-keep class com.google.android.gms.** { *; }
-keep class com.google.games.** { *; }
5. 문제 해결
a. 로그 확인
- Logcat 확인
- Android Logcat을 사용하여 로그인 시도 중 발생하는 오류를 확인합니다.
- 오류 메시지를 분석하여 추가적인 설정이 필요한지 확인합니다.
b. 디버깅
- GPGS 로그 레벨 변경
PlayGamesPlatform.DebugLogEnabled = true;
PlayGamesPlatform.Activate();
6. 기타
- SHA-1 인증서 지문 확인
- Google Developer Console에서 SHA-1 지문이 올바르게 설정되어 있는지 확인합니다.
- 빌드 타입에 따라 Release와 Debug 지문을 모두 추가합니다.
- Google Play 게임 서비스 API 활성화
- Google Cloud Console에서 Google Play Game Services API가 활성화되어 있는지 확인합니다.
빠른 해결
반응형