| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154 | using com.m3839.sdk;using com.m3839.sdk.login;using com.m3839.sdk.login.bean;using com.m3839.sdk.login.listener;using ET;namespace GFGGame{    public class QDHYKBManager : SingletonBase<QDHYKBManager>    {        public string UserId;        public void InitSDK()        {            // 游戏屏幕方向 (Game Screen Orientation)            int screenOrienation = HykbContext.SCREEN_PORTRAIT;            // 初始化回调监听(Init callback)            HykbLogin.SetUserListener(new HykbUserListenerProxy());            HykbLogin.SetAntiListener(new HykbAntiListenerProxy());            HykbInitListenerProxy proxy = new HykbInitListenerProxy();            HykbLogin.Init("25374", screenOrienation, proxy);        }        /// <summary>        /// 登录        /// </summary>        public void Login()        {            QDHYKBManager.Instance.UserId = null;            ViewManager.Show<ModalStatusView>("登录中...");            HykbUser user = HykbLogin.GetUser();            Log.Debug($"sdk manager Login {user == null}");            if (user != null)            {                EventAgent.DispatchEvent(ConstMessage.ON_PLATFORM_SDK_LOGINED, user.getUserId());            }            else            {                Log.Debug($"sdk Login");                HykbLogin.Login();            }        }        /// <summary>        /// 切换账号        /// </summary>        public void DoSwitchAccount()        {            HykbLogin.SwitchAccount();        }        /// <summary>        /// 获取用户信息        /// </summary>        public void GetUser()        {            // 获取当前用户信息(Get current User information)            HykbUser user = HykbLogin.GetUser();            if (user != null)            {                //ShowText.text = user.toString();            }        }        //回到登录界面,不退出账号        public void OnQuitToLoginView()        {                                }        public void Logout()        {            // 登出 (Logout)            HykbLogin.Logout();        }    }    class HykbInitListenerProxy : HykbV2InitListener    {        public HykbInitListenerProxy()        {                    }        public override void OnSucceed()        {            Log.Debug("HykbInitListenerProxy OnSucceed");            EventAgent.DispatchEvent(ConstMessage.ON_PLATFORM_SDK_INITED, true);        }        public override void OnFailed(int code, string message)        {            Log.Debug("HykbInitListenerProxy OnFailed code: " + code + " - message:" + message);            EventAgent.DispatchEvent(ConstMessage.ON_PLATFORM_SDK_INITED, false);        }    }    /// <summary>    /// 用户信息相关的监听(登录和切换账号)    /// </summary>    class HykbUserListenerProxy : HykbUserListener    {        public HykbUserListenerProxy()        {                    }        public override void OnLoginFailed(int code, string message)        {            Log.Debug($"OnLoginFailed code: " + code + " - message:" + message);            if (code == 2003)            {                ViewManager.Hide<ModalStatusView>();                return;            }            EventAgent.DispatchEvent(ConstMessage.ON_PLATFORM_SDK_LOGINED, null);        }        public override void OnLoginSucceed(HykbUser user)        {            Log.Debug("OnLoginSucceed");            QDHYKBManager.Instance.UserId = user.getUserId();             EventAgent.DispatchEvent(ConstMessage.ON_PLATFORM_SDK_LOGINED, user.getUserId());        }        public override void OnSwitchUser(HykbUser user)        {            Log.Debug("OnSwitchUser");            //instance.ShowText.text = "" + user.getNick();        }    }    class HykbAntiListenerProxy : HykbAntiListener    {        public override void OnAnti(int code, string message)        {            Log.Debug($"OnAnti code {code} message {message}");            if(code == 100)            {                            }            else            {                HykbLogin.Logout();            }        }    }}
 |