using Assets.Scripts.Apis.Models; using Assets.Scripts.UI.Prefab.Login; using Assets.Scenes.Ride.Scripts.Model; using System.Collections; using System.Collections.Generic; using UnityEngine; using System.Net; using System.Globalization; using System.Threading; using Assets.Scripts.Devices; using Assets.Scripts; using System; using System.Threading.Tasks; using System.Timers; using Newtonsoft.Json; using Facebook.Unity; using Assets.Scenes.Ride.Scripts; public delegate void ChangeLanguageDelegate(); public static class App { public static string Host = "http://192.168.0.101:5083/"; public static string AppVersion = Application.version; public static int RouteIdParam = 0; public static UserResultModel CurrentUser { get; set; } public static string ActivityUrl { get; internal set; } #if !(UNITY_ANDROID || UNITY_IOS) //pc版微信id public static string WxAppId => "wx9e8ca734e024f084"; #else //移动版微信id public static string WxAppId => "wxe3573a84e7e29902"; #endif public static string MapBoxAccessToken => "pk.eyJ1IjoiYW5keXNqdCIsImEiOiJja2ZhajE5OGwwamRiMnltcW96bHk0ZWFuIn0.GvKanc6UveWSvIjS9HfBPA"; public static double latitude { get; internal set; } public static double longitude { get; internal set; } public static string is401 { get; set; } public static bool FromLogin => false; public static bool? _IsRowerMode = null; public static bool? IsRowerMode { get => _IsRowerMode; set { PlayerPrefs.SetString("IsRowerMode",value.ToString()); _IsRowerMode = value; } } /// /// 场景跳转传值 /// Name,MapListPanel /// xxx,bbb /// public static System.Collections.Generic.Dictionary MainSceneParam = new Dictionary(); public static IDictionary TextureCache = new Dictionary(); public static Texture CurrentUserHeadTexture; public static RouteResult routeResult;//骑行记录向骑行场景传值 public static Texture DefaultRotateTexture { get; set; } //全局用 输入框或者下拉框修改标志位 public static bool isChanged { get; set; } public static string notifyContent { get; internal set; } //全局用,如果弹多条消息用这个队列 public static Queue multiNotifyContent; //全局用,弹多个广告 public static Queue adQueue; public static RideSetting RideSetting = new RideSetting(); public static string pageName { get; set; } public static int firstEnter { get; set; } public static IPEndPoint UdpAddress { get; private set; } = new IPEndPoint(IPAddress.Parse("192.168.0.97"), 11000); public static IPEndPoint TcpAddress { get; private set; } = new IPEndPoint(IPAddress.Parse("192.168.0.102"), 21001); public static UpdateModel UpdateObject { get; set; } public static int CompetionId { get; set; }//比赛id //public static string AppDownloadUrl { get; internal set; } //public static string AppVersionCode { get; internal set; } public static List JoinedCompetitionList { get; set; }//我参加的比赛 public static List CompetitionIdList = new List(); private static MainDeviceAdapter mainDeviceAdapter; public static MainDeviceAdapter MainDeviceAdapter { get { if (mainDeviceAdapter == null) { mainDeviceAdapter = new MainDeviceAdapter(); } return mainDeviceAdapter; } } public static string CurrentScene { get; set; }//当前场景 public static float? topRectStartX { get; internal set; } public static WeChatController weChatController = WeChatController.Instance; public static ImageSelectorController imageSelectorController = ImageSelectorController.Instance; public static Vector2 MobileResolution = new Vector2(844f, 390f);//移动端分辨率 public static Vector2 PcResolution = new Vector2(1600f, 900f);//PC端分辨率 public static int autoClearTimes = 30; public readonly static double width = Screen.width; public readonly static double height = Screen.height; public readonly static bool isFullScreen = width / height > 1.8; public static float canvasWidth { get; set; } public static string WorkoutsUrl { get; internal set; } public static long delayTime { get; set; } public static List userList = new List(); public static TempRecordData tempRecordData { get; set; } private static string language { get; set; } public static Dictionary LanguageManager { get; set; } public static string CurrentRouteType { get; set; } #region 语言改变事件 public static event ChangeLanguageDelegate ChangeLanguageEvent; static Dictionary> dic; //全局队列保留最后5条消息 public static Queue globalMessageQueue = null; public static string GetLocalLanguage() { return language; } public static void ChangeLanguage(string lan) { language = lan; if (dic.ContainsKey(language)) { LanguageManager = dic[language]; } if (ChangeLanguageEvent != null) { ChangeLanguageEvent(); } } public static string GetLocalString(string value) { if (LanguageManager != null && LanguageManager.ContainsKey(value)) { return LanguageManager[value]; } return value; } private static void InitLanguage() { var systemLanguage = Application.systemLanguage.ToString().ToLower(); Debug.Log(systemLanguage); if (systemLanguage.Contains("chinese")) { language = "zh"; } else { language = "en"; } #if UNITY_EDITOR //language = "en"; #endif var a = Resources.Load("UI/language"); dic = JsonConvert.DeserializeObject>>(a.text); if (dic.ContainsKey(language)) { LanguageManager = dic[language]; } } #endregion //记录当前集合 public static MapRouteAreaItem currentArea = null; public static List RouteList = new List(); public static bool _currentPageIsHome = false; public static event EventHandler isHomeChanged; public static string DeviceUniqueIdentifier = SystemInfo.deviceUniqueIdentifier; public static bool currentPageIsHome { get => _currentPageIsHome; set { _currentPageIsHome = value; if (isHomeChanged != null) { isHomeChanged(value, new EventArgs()); } } } public static bool CanOpenAd = false; public static Dictionary websiteDict = new Dictionary() { {"https://wx.powerfun.com.cn/","http://www.powerfun.com/" }, {"http://pf.juze.pro/","http://pfweb.juze.pro/" } }; static App() { InitLanguage(); #if !UNITY_EDITOR //测试服务器 Host = "http://pf.juze.pro/"; UdpAddress = new IPEndPoint(IPAddress.Parse("47.97.84.8"), 21000); TcpAddress = new IPEndPoint(IPAddress.Parse("47.97.84.8"), 21001); //线上 //Host = "https://wx.powerfun.com.cn/"; //UdpAddress = new IPEndPoint(IPAddress.Parse("47.97.84.8"), 11000); //TcpAddress = new IPEndPoint(IPAddress.Parse("47.97.84.8"), 11001); //本地 //Host = "http://192.168.0.101:5085/"; //UdpAddress = new IPEndPoint(IPAddress.Parse("192.168.0.97"), 11000); //TcpAddress = new IPEndPoint(IPAddress.Parse("192.168.0.102"), 21001); Debug.unityLogger.logEnabled = false; #else //Host = "http://pf.juze.pro/"; //Host = "http://192.168.0.101:5087/"; UdpAddress = new IPEndPoint(IPAddress.Parse("47.97.84.8"), 11000); TcpAddress = new IPEndPoint(IPAddress.Parse("47.97.84.8"), 11001); //UdpAddress = new IPEndPoint(IPAddress.Parse("192.168.0.102"), 21001); //TcpAddress = new IPEndPoint(IPAddress.Parse("192.168.0.102"), 21001); #endif if (!FB.IsInitialized) { FB.Init(); } else { FB.ActivateApp(); } var isRower = PlayerPrefs.GetString("IsRowerMode"); if (!string.IsNullOrEmpty(isRower)) { App._IsRowerMode = bool.Parse(isRower); } //App.ChangeLanguage("en"); globalMessageQueue = new Queue(); multiNotifyContent = new Queue(); adQueue = new Queue(); Screen.sleepTimeout = SleepTimeout.NeverSleep; } }