using UnityEngine;
using UnityEngine.SceneManagement;
using GooglePlayGames;
using GooglePlayGames.BasicApi;

public class SceneLoader : MonoBehaviour
{
    void Start()
    {
        // 구글 플레이 게임 서비스 초기화
        PlayGamesClientConfiguration config = new PlayGamesClientConfiguration.Builder().Build();
        PlayGamesPlatform.InitializeInstance(config);
        PlayGamesPlatform.Activate();

        // 사용자 인증 시도
        PlayGamesPlatform.Instance.Authenticate(SignInCallback, false);
    }

    void SignInCallback(bool success)
    {
        if (success)
        {
            Debug.Log("Google Play Games Services authentication successful.");
        }
        else
        {
            Debug.LogError("Google Play Games Services authentication failed.");
            // 여기서 인증 실패 시 사용자에게 메시지를 표시하거나 다른 처리를 할 수 있습니다.
        }
    }

    void Update()
    {
        // 인증된 상태에서 마우스 오른쪽 클릭 감지
        if (PlayGamesPlatform.Instance.localUser.authenticated && Input.GetMouseButtonDown(1))
        {
            SceneManager.LoadScene("Main");
        }
    }
}

 

 

+++

 

PlayGamesClientConfiguration config = new PlayGamesClientConfiguration.Builder().Build();
PlayGamesPlatform.InitializeInstance(config);
PlayGamesPlatform.Activate();

초기화

 

구글 플레이 게임 서비스를 초기화하고 활성화

 

PlayGamesPlatform.Instance.Authenticate(SignInCallback, false);

인증시도

 

사용자를 인증하려고 시도

SignInCallback은 인증 결과를 처리하는 콜백 함수

 

void SignInCallback(bool success)
{
    if (success)
    {
        Debug.Log("Google Play Games Services authentication successful.");
    }
    else
    {
        Debug.LogError("Google Play Games Services authentication failed.");
        // 여기서 인증 실패 시 사용자에게 메시지를 표시하거나 다른 처리를 할 수 있습니다.
    }
}

인증 콜백

 

인증 성공 여부에 따라 로그를 출력하거나 인증 실패 시 사용자에게 메시지를 표시

 

void Update()
{
    // 인증된 상태에서 마우스 오른쪽 클릭 감지
    if (PlayGamesPlatform.Instance.localUser.authenticated && Input.GetMouseButtonDown(1))
    {
        SceneManager.LoadScene("Main");
    }
}

 

매 프레임마다 사용자의 인증 상태를 확인하고,

 

인증된 경우 마우스 오른쪽 클릭을 감지하여 씬을 로드

 

 

+++

 

PlayGamesPlatform.Instance.Authenticate(SignInCallback, false); 부분에서

 

false와 true의 차이

 

비사일런트 모드(false)와 사일런트 모드(true)

 

 

PlayGamesPlatform.Instance.Authenticate(SignInCallback, false);

 

 

 

유저가 로그인하지 않은 경우, 인증 화면이 나타나 사용자가 로그인하도록 함

 

PlayGamesPlatform.Instance.Authenticate(SignInCallback, true);

 

 

유저가 로그인하지 않았거나 인증 토큰이 유효하지 않은 경우,

 

인증 시도가 조용히 실패하고 인증 화면이 표시 x

 

 

 

+ Recent posts