174 lines
5.5 KiB
C#
174 lines
5.5 KiB
C#
|
||
using UnityEngine;
|
||
|
||
using Newtonsoft.Json;
|
||
using BingoBrain;
|
||
using DG.Tweening;
|
||
using System;
|
||
using ScrewsMaster;
|
||
using AppLovinMax.Scripts.IntegrationManager.Editor;
|
||
|
||
public class LoginSystem_sdk
|
||
{
|
||
|
||
//is debug test (LoginCountLimit 应该为 5, 测试改为2)
|
||
private const int LoginCountLimit = 5;
|
||
public int loginCount = 0;
|
||
private LoginSystem_sdk()
|
||
{
|
||
}
|
||
private static readonly LoginSystem_sdk _instance = new LoginSystem_sdk();
|
||
|
||
public static LoginSystem_sdk Instance
|
||
{
|
||
get { return _instance; }
|
||
}
|
||
|
||
public void RequestLogin()
|
||
{
|
||
|
||
var requestLoginData = new RequestLoginData_sdk
|
||
{
|
||
device_id = SystemInfo.deviceUniqueIdentifier,
|
||
// device_id ="E742FE8B-C32E-56A7-8F8A-6B3BC0F3169",
|
||
pack_name = NetworkManager.packName,
|
||
app_version = Application.version,
|
||
// channel = BingoBea.Instance.attribution,
|
||
// sim = WebviewManager.haveSimCard
|
||
};
|
||
Debug.Log(JsonConvert.SerializeObject(requestLoginData));
|
||
Debug.Log(SystemInfo.deviceUniqueIdentifier);
|
||
Debug.Log(JsonConvert.SerializeObject(requestLoginData));
|
||
NetworkKit_sdk.Post<LoginModel_sdk>("login", requestLoginData, (isSuccess, loginData) =>
|
||
{
|
||
|
||
|
||
if (isSuccess)
|
||
{
|
||
Debug.Log("Login_sdk" + "-------------------" + JsonConvert.SerializeObject(loginData));
|
||
LoginModel_sdk loginModel = LoginModel_sdk.Instance;
|
||
loginModel.cdn_url = loginData.cdn_url;
|
||
loginModel.setting = loginData.setting;
|
||
loginModel.play_data = loginData.play_data;
|
||
loginModel.token = loginData.token;
|
||
loginModel.uid = loginData.uid;
|
||
loginModel.country = loginData.country;
|
||
loginModel.expires_at = loginData.expires_at;
|
||
loginModel.is_magic = loginData.is_magic;
|
||
loginModel.invite_code = loginData.invite_code;
|
||
loginModel.invite_url = loginData.invite_url;
|
||
loginModel.last_login_time = loginData.last_login_time;
|
||
loginModel.login_time = loginData.login_time;
|
||
loginModel.reg_time = loginData.reg_time;
|
||
loginModel.new_player = loginData.new_player;
|
||
loginModel.debug_log = loginData.debug_log;
|
||
loginModel.enwp = loginData.enwp;
|
||
|
||
// if (loginData.is_magic)
|
||
// {
|
||
// if (PlayerPrefs.GetInt("is_gift") != 1)
|
||
// {
|
||
// AppDispatcher.Instance.Dispatch(CsjInfoC.UI_DisplayLoadingUI);
|
||
// UICtrlDispatcher.Instance.Dispatch(SkinInfo.LoginAUI_Close);
|
||
// }
|
||
// PlayerPrefs.SetInt("is_gift", 1);
|
||
// }
|
||
// else
|
||
// {
|
||
|
||
// return;
|
||
// }
|
||
|
||
NetworkKit_sdk.CDNUrl = $"{loginData.cdn_url}/";
|
||
NetworkKit_sdk.SetCacheToken(loginData.token);
|
||
|
||
// DateTimeBoardk.Instance.SetServerCurrTimestamp(loginData.login_time);
|
||
|
||
// Sequence mLoopSequence = DOTween.Sequence();
|
||
// mLoopSequence.AppendCallback(() =>
|
||
// {
|
||
// RequestHeart();
|
||
|
||
// GameHelper.PostFunnelLogin("loginRecv", true);
|
||
ConfigSystem_sdk.Instance.OnRequestGetConfig();
|
||
// if (GameHelper.IsGiftSwitch())
|
||
// {
|
||
// // GameObject.Find("MainCameraRoot").SetActive(false);
|
||
// }
|
||
|
||
}
|
||
else
|
||
{
|
||
Debug.Log(JsonConvert.SerializeObject(loginData));
|
||
//UICtrlDispatcher.Instance.Dispatch(UICtrlMsg.NetLoadingUI_Close);
|
||
Debug.Log("登陆请求失败");
|
||
|
||
float times = loginCount == 0 ? 0 : 5f;
|
||
|
||
DOVirtual.DelayedCall(times, () =>
|
||
{
|
||
if (loginCount < LoginCountLimit)
|
||
{
|
||
loginCount++;
|
||
RequestLogin();
|
||
|
||
}
|
||
else
|
||
{
|
||
loginCount = 0;
|
||
Action _OnFail = () =>
|
||
{
|
||
NetworkDispatcher.Instance.Dispatch(NetworkMsg.Login);
|
||
};
|
||
}
|
||
});
|
||
}
|
||
});
|
||
}
|
||
|
||
|
||
private void RequestHeart()
|
||
{
|
||
NetworkKit.PostWithHeader("user/health");
|
||
}
|
||
|
||
|
||
private void OnRequestLogin(object obj = null)
|
||
{
|
||
RequestLogin();
|
||
}
|
||
|
||
}
|
||
|
||
public partial class NetworkMsg_sdk
|
||
{
|
||
private static uint MsgRootLogic = 100000;
|
||
|
||
public static uint GetConfig = ++MsgRootLogic;
|
||
|
||
public static uint Reconnect = ++MsgRootLogic;
|
||
|
||
public static uint Login = ++MsgRootLogic;
|
||
|
||
public static uint SavePlayData = ++MsgRootLogic;
|
||
|
||
public static uint GetPlayData = ++MsgRootLogic;
|
||
|
||
public static uint SendInviteCode = ++MsgRootLogic;
|
||
|
||
public static uint GetInviteData = ++MsgRootLogic;
|
||
|
||
public static uint UpdateCheckInviteData = ++MsgRootLogic;
|
||
|
||
public static string Identifier = "com.interactivegames.bingotornado";
|
||
public static uint Start = ++MsgRootLogic;
|
||
public static uint NotNetwork = ++MsgRootLogic;
|
||
}
|
||
public class RequestLoginData_sdk
|
||
{
|
||
public string device_id;
|
||
public string pack_name;
|
||
public string app_version;
|
||
public string channel;
|
||
public bool sim;
|
||
} |