~현재 진행 상황
업적 만들기
Keystore Manager 만들기
연동 로그인
GitHub - playgameservices/play-games-plugin-for-unity: Google Play Games plugin for Unity
의 Sign in 참고
GPGSManager
using GooglePlayGames;
using GooglePlayGames.BasicApi;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class GPGSManager
{
private static GPGSManager instance = new GPGSManager();
public GPGSManager() { }
public static GPGSManager GetInstance()
{
return GPGSManager.instance;
}
public System.Action onAuthenticate;
public void Authenticate()
{
//인증
PlayGamesPlatform.Instance.Authenticate(ProcessAuthentication);
}
internal void ProcessAuthentication(SignInStatus status)
{
if (status == SignInStatus.Success)
{
// Continue with Play Games Services
Debug.Log(PlayGamesPlatform.Instance.localUser.id);
Debug.Log(PlayGamesPlatform.Instance.localUser.image);
Debug.Log(PlayGamesPlatform.Instance.localUser.state);
Debug.Log(PlayGamesPlatform.Instance.localUser.userName);
App.instance.StartCoroutine(this.CoLoadImage());
this.onAuthenticate();
}
else
{
// Disable your integration with Play Games Services or show a login button
// to ask users to sign-in. Clicking it should call
// PlayGamesPlatform.Instance.ManuallyAuthenticate(ProcessAuthentication).
}
}
private IEnumerator CoLoadImage()
{
yield return new WaitUntil(() => PlayGamesPlatform.Instance.localUser.image != null);
Debug.LogFormat("Social.localUser.image: {0}", PlayGamesPlatform.Instance.localUser.image);
Texture2D texture = PlayGamesPlatform.Instance.localUser.image;
Debug.LogFormat("{0}x{1}", texture.width, texture.height);
App.instance.imgPlayer.sprite = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), new Vector2(0.5f, 0.5f));
}
}
App
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using TMPro;
using GooglePlayGames;
public class App : MonoBehaviour
{
public static App instance;
public TMP_Text txtVersion;
public Image imgPlayer;
private void Awake()
{
instance = this;
}
void Start()
{
Debug.Log("App Start");
this.txtVersion.text = string.Format("version {0}", Application.version);
GPGSManager.GetInstance().onAuthenticate = () =>
{
Debug.Log("Authenticate!");
//뉴비 업적 달성
PlayGamesPlatform.Instance.ReportProgress(GPGSIds.achievement_, 100.0f, (bool success) => {
// handle success or failure
Debug.LogFormat("achievement : {0}, result : {1}", GPGSIds.achievement_, success);
});
};
GPGSManager.GetInstance().Authenticate();
}
}
번들로 빌드하기
Build Settings-Build App Bundle (Google Play) 체크 후 Build
내부 테스트를 위한 테스터 등록
테스트-내부 테스트-테스터
테스트 버전 등록
테스트-내부 테스트-출시-새 버전 만들기
*오류1
앱이 Android 13(API 33) 이상을 타겟팅합니다. Play Console에서 광고 ID 사용을 선언해야 합니다.
->선언 작성
AndroidManifest에 권한 포함하기
<application> 위에
<uses-permission android:name="com.google.android.gms.permission.AD_ID"/>
AndroidManifest는 Project-Plugins-Android-GooglePlayGamesManifest.androidlib에 존재
*오류2
이 버전은 Google Play 64비트 요구사항을 준수하지 않습니다.
Player Settings-Build Settigns-Configuration
Target Architectures의 ARM64 체크
빌드 후 재업로드
테스터-테스트 참여 방법-웹에서 참여-링크복사
NOX에서 링크 입력
ACCEPT INVITE
설치 완료
'Project > <team Not Same> 꿈의 왕국 : 영원한 보금자리' 카테고리의 다른 글
[PJ] UIStage 데이터테이블 연동, 추상팩토리와 빌더 패턴 (0) | 2023.05.01 |
---|---|
[R&D] UI small Stage Map UIPlayer Move (0) | 2023.05.01 |
[GPGS] 프로젝트에 로그인 연동하기2 (0) | 2023.04.23 |
[R&D] Ticket charge (0) | 2023.04.11 |
[R&D] Energy bar Slider (0) | 2023.04.11 |