using Unity.Services.Core; using Unity.Services.Authentication.PlayerAccounts; using Unity.Services.Authentication; using UnityEngine; using UnityEngine.UI; using System; using TMPro; public enum UnitySDK_Type { none, Anonymous, Google, FaceBook, un } public class UnitySDK : SDKBase { UnitySDK_Type type = UnitySDK_Type.none; public UnitySDKCBListener mListener; public UnitySDK() { mListener = SDKMgr.Instance.gameObject.AddComponent(); SDKName = "Unity"; } #region 继承父类 public override void Init() { base.Init(); UnityServices.Instance.Initialized += () => { Debug.Log("初始化"); mListener.InitSuccessCB(null); ChooseSDK(); }; UnityServices.InitializeAsync(); } public override void Login() { switch (type) { case UnitySDK_Type.Anonymous: UGS_Anonymous_Start_SignIn_Asnyc(); break; case UnitySDK_Type.Google: case UnitySDK_Type.FaceBook: UGS_UPA_Start_SignIn_Asnyc(); break; case UnitySDK_Type.un: UGS_un_Start_SignIn_Asnyc(UGS_un_username, UGS_un_password); break; default: break; } } public override void Logout() { UGS_SignOut(); } public override void SwitchAccount() { } public override void Pay(int goodsId, string goodsName, string goodsDesc, int count, float amount, string cpOrderId, string extrasParams) { } public override void CreateRole() { } public override void EnterGame() { } public override void UpdateRoleLv() { } public override void ExitGame() { } public override bool Exit() { return true; } public override bool Quit() { return true; } public override void CallInitSuccessCB() { Login(); } public override void CallLoginSuccessCB() { } #endregion 继承父类 void ChooseSDK() { Transform loginpad = GameObject.Find("UIRoot").transform.Find("UILanuch").Find("Root").Find("Login"); Button btn_anonymous = loginpad.Find("Btn_Login_Anonymous").GetComponent