168 lines
5.9 KiB
C#
168 lines
5.9 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using SGModule.MarkdownKit;
|
|
using SGModule.NetKit;
|
|
using SGModule.Common.Helper;
|
|
using UnityEngine;
|
|
using BallKingdomCrush;
|
|
using UNSDK;
|
|
|
|
public class LoveLegendRoot : MonoBehaviour
|
|
{
|
|
public void Awake()
|
|
{
|
|
#if UNITY_EDITOR || GAME_RELEASE
|
|
GameObject.Find("IngameDebugConsole").SetActive(false);
|
|
#endif
|
|
SdkConfigMgr.Init();
|
|
|
|
MaxADKit.Init();
|
|
OnLauncher();
|
|
TrackKit.TrackLoginFunnel(LoginFunnelEventType.Bootstrap);
|
|
|
|
BuildGMTool();
|
|
NetGmTool.Instance.Init();
|
|
|
|
|
|
|
|
}
|
|
|
|
public static void OnLauncher()
|
|
{
|
|
Language.LoadLocalizedText();
|
|
Language.Initialize();
|
|
|
|
AppObjConst.FrameGo = new GameObject($"{AppObjConst.FrameGoName}");
|
|
AppObjConst.FrameGo.AddComponent<LoveLegendCore>();
|
|
DontDestroyOnLoad(AppObjConst.FrameGo);
|
|
App.InitApplication(SuperApplication.Instance);
|
|
NetworkManager.haveSimCard = HasSIMCard();
|
|
|
|
MarkdownKit.Instance.LoadText("privacy", "https://official.piggyhydration.com/privacy.md");
|
|
MarkdownKit.Instance.LoadText("user", "https://official.piggyhydration.com/user.md");
|
|
}
|
|
|
|
private static string adInfoLabel = "";
|
|
private static void BuildGMTool()
|
|
{
|
|
GMTool.Instance.AddItem(new GMToolItem(GUIType.Separator, () => "测试工具"));
|
|
GMTool.Instance.AddItem(new GMToolItem(GUIType.Separator, () => "测试工具"));
|
|
GMTool.Instance.AddItem(new GMToolItem(GUIType.Button,
|
|
() => "清空签到记录",
|
|
s =>
|
|
{
|
|
DataMgr.SignState.Value = new List<long>();
|
|
}));
|
|
GMTool.Instance.AddItem(new GMToolItem(GUIType.Button,
|
|
() => "测试签到",
|
|
s =>
|
|
{
|
|
DataMgr.SignState.Value.Add(GameHelper.GetNowTime() + (long)TimeSpan.FromDays(DataMgr.SignState.Value.Count).TotalSeconds);
|
|
DataMgr.SignState.Save();
|
|
}));
|
|
GMTool.Instance.AddItem(new GMToolItem(GUIType.Button,
|
|
() => "打开礼包界面",
|
|
s =>
|
|
{
|
|
UICtrlDispatcher.Instance.Dispatch(UICtrlMsg.PackrewardUI_Open, true);
|
|
}));
|
|
GMTool.Instance.AddItem(new GMToolItem(GUIType.Button,
|
|
() => "加广告次数+1",
|
|
s =>
|
|
{
|
|
var adNums = AdExchangeManager.Instance.GetLookRewardADNum();
|
|
adNums += 1;
|
|
AdExchangeManager.Instance.SetLookRewardADNum(adNums);
|
|
}));
|
|
GMTool.Instance.AddItem(new GMToolItem(GUIType.Button,
|
|
() => "加广告次数+10",
|
|
s =>
|
|
{
|
|
var adNums = AdExchangeManager.Instance.GetLookRewardADNum();
|
|
adNums += 10;
|
|
AdExchangeManager.Instance.SetLookRewardADNum(adNums);
|
|
}));
|
|
GMTool.Instance.AddItem(new GMToolItem(GUIType.Button,
|
|
() => "金币测试 +1000000",
|
|
s =>
|
|
{
|
|
DataMgr.Coin.Value += 1000000;
|
|
adInfoLabel += $"金币测试+1000000 当前金币: {DataMgr.Coin.Value}\n";
|
|
}));
|
|
GMTool.Instance.AddItem(new GMToolItem(GUIType.Button,
|
|
() => "等级 +5",
|
|
s =>
|
|
{
|
|
DataMgr.GameLevel.Value += 5;
|
|
|
|
adInfoLabel += $"等级 +5 当前等级: {DataMgr.GameLevel.Value}\n";
|
|
}));
|
|
GMTool.Instance.AddItem(new GMToolItem(GUIType.Button,
|
|
() => "客户端日志上传",
|
|
s =>
|
|
{
|
|
ErrorLogKit.Send("error", "客户端日志上传", "GM工具点击测试", SuperApplication.Instance.attribution);
|
|
|
|
}));
|
|
GMTool.Instance.AddItem(new GMToolItem(GUIType.Button,
|
|
() => "广告ID信息打印",
|
|
s =>
|
|
{
|
|
adInfoLabel += $"Max token: {MaxADKit.SDKKey} \n 激励广告Id: {MaxADKit.rewardedADUnitID} \n 插屏广告Id: {MaxADKit.interstitialADUnitID} \n";
|
|
|
|
}));
|
|
|
|
GMTool.Instance.AddItem(new GMToolItem(GUIType.Label, () => $"{DataMgr.Ticket} 类型测试"));
|
|
// 来显示 adInfoLabel 的内容
|
|
GMTool.Instance.AddItem(new GMToolItem(GUIType.Label, () => adInfoLabel));
|
|
|
|
|
|
}
|
|
|
|
public static bool HasSIMCard()
|
|
{
|
|
#if UNITY_ANDROID && !UNITY_EDITOR
|
|
try
|
|
{
|
|
// 获取当前Activity
|
|
AndroidJavaClass unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
|
|
AndroidJavaObject currentActivity = unityPlayer.GetStatic<AndroidJavaObject>("currentActivity");
|
|
|
|
// 获取TelephonyManager
|
|
AndroidJavaObject telephonyManager = currentActivity.Call<AndroidJavaObject>("getSystemService", "phone");
|
|
|
|
if (telephonyManager == null)
|
|
{
|
|
Debug.Log("无法获取TelephonyManager,可能设备不支持电话功能。");
|
|
return false;
|
|
}
|
|
|
|
// 获取SIM卡状态
|
|
int simState = telephonyManager.Call<int>("getSimState");
|
|
|
|
Debug.Log("simState-------" + simState);
|
|
// 判断SIM卡状态
|
|
switch (simState)
|
|
{
|
|
case 1: // SIM_STATE_ABSENT
|
|
return false;
|
|
case 2: // sim_STATE_PIN_REQUIRED
|
|
case 3: // SIM_STATE_LOCKED
|
|
case 4: // SIM_STATE_NETWORK_LOCKED
|
|
case 5: // SIM_STATE_READY
|
|
return true;
|
|
default:
|
|
return false;
|
|
}
|
|
}
|
|
catch (System.Exception e)
|
|
{
|
|
Debug.LogError("检查SIM卡时出错: " + e.Message);
|
|
return false;
|
|
}
|
|
#else
|
|
return false;
|
|
#endif
|
|
}
|
|
}
|