From 312f9ece8d4a46d8989187730fc7f5c7fc36cfb5 Mon Sep 17 00:00:00 2001 From: wxr <wxr@hdlchina.com.cn> Date: 星期五, 12 七月 2024 15:20:52 +0800 Subject: [PATCH] Update SplashActivity.cs --- HDL_ON/Common/ApiUtlis.cs | 224 +++++++++++++++++++++++++++++++++----------------------- 1 files changed, 132 insertions(+), 92 deletions(-) diff --git a/HDL_ON/Common/ApiUtlis.cs b/HDL_ON/Common/ApiUtlis.cs index e0a8a6a..8ae0cfb 100644 --- a/HDL_ON/Common/ApiUtlis.cs +++ b/HDL_ON/Common/ApiUtlis.cs @@ -72,12 +72,14 @@ /// 涓嬭浇鏁版嵁瀹屾垚鏍囪 /// </summary> public bool DownloadDataComplete = false; + + public bool hadInternet = true; /// <summary> /// 涓嬭浇鏁版嵁 /// </summary> public void DownloadData() { - if (MainPage.InternetStatus == 0 || MainPage.NoLoginMode) + if (MainPage.NoLoginMode) { DownloadDataComplete = true; return; @@ -92,18 +94,102 @@ var waitPage = new Loading(); MainPage.BaseView.AddChidren(waitPage); waitPage.Start(Language.StringByID(StringId.PleaseWait)); + string code = StateCode.SUCCESS; Inverter.Ins.H5Page = null;//閲嶇疆鍏変紡椤甸潰 - var downloadDataThread = new System.Threading.Thread(() => { + try + { + //澧炲姞3绉掍簯鏈嶅姟鍣ㄨ繛鎺ユ娴嬶紝杩炰笉涓婃湇鍔″櫒鐨勬椂鍊欎笉鍒锋柊鏁版嵁 + hadInternet = true; + var dataList = new List<GlobalRegionListRes>(); + var requestJson = HttpUtil.GetSignRequestJson(new GetRegionListObj() { regionMark = HttpUtil.RegionMark }); + var revertObj = HttpUtil.RequestHttpsPost(NewAPI.API_POST_GlobalRegionList, requestJson, HttpUtil.GlobalRequestHttpsHost, "", 3); + if (revertObj == null || revertObj.Code != StateCode.SUCCESS) + { + DownloadDataComplete = true; + hadInternet = false; + try + { + var spatialInfoDataBytes = FileUtlis.Files.ReadFile("SpatialInfoData"); + if (spatialInfoDataBytes != null) + { + var spatialInfoDataString = System.Text.Encoding.UTF8.GetString(spatialInfoDataBytes); + if (spatialInfoDataString != null && !string.IsNullOrEmpty(spatialInfoDataString)) + { + var spatialInfoDataList = JsonConvert.DeserializeObject<List<SpatialInfo>>(spatialInfoDataString); + SpatialInfo.CurrentSpatial.UpdateSpatialList(spatialInfoDataList); + } + } + } + catch (Exception ex) + { + MainPage.Log($"{this.GetType()}:鍔犺浇缂撳瓨鎴块棿鏁版嵁寮傚父:{ex.Message}"); + } + + try + { + var fileList = Common.FileUtlis.Files.ReadFiles(); + foreach (var file in fileList) + { + FunctionList.List.IniFunctionList(file, true); + } + Room.CurrentSpatial.InitRoomListFunctions(); + } + catch (Exception ex) + { + MainPage.Log($"{this.GetType()}:鍔犺浇缂撳瓨璁惧鏁版嵁寮傚父:{ex.Message}"); + } + + + return; + } + else + { + hadInternet = true; + } + } + catch (Exception ex) + { + MainPage.Log($"Error锛氫笅杞芥暟鎹�1锛歿ex.Message}"); + DownloadDataComplete = true; + return; + } + finally + { + if (!hadInternet) + { + Application.RunOnMainThread(() => + { + if (waitPage != null) + { + waitPage.Hide(); + waitPage.RemoveFromParent(); + } + }); + } + } MainPage.Log($"杩涘叆璇诲彇浜戠鏁版嵁绾跨▼"); //===================鍒锋柊Token======================= code = Ins.HttpRequest.RefreshToken(); if (code != StateCode.SUCCESS) { + if (waitPage != null) + { + Application.RunOnMainThread(() => + { + try + { + waitPage.Hide(); + waitPage.RemoveFromParent(); + waitPage = null; + } + catch { } + }); + } MainPage.Log($"鍒锋柊token澶辫触"); return; } @@ -112,6 +198,19 @@ code = Ins.HttpRequest.GetHomePager(); if (code != StateCode.SUCCESS) { + if (waitPage != null) + { + Application.RunOnMainThread(() => + { + try + { + waitPage.Hide(); + waitPage.RemoveFromParent(); + waitPage = null; + } + catch { } + }); + } MainPage.Log($"鍒锋柊浣忓畢淇℃伅澶辫触"); return; } @@ -120,6 +219,19 @@ code = Ins.HttpRequest.GetUserInfo(); if (code != StateCode.SUCCESS) { + if (waitPage != null) + { + Application.RunOnMainThread(() => + { + try + { + waitPage.Hide(); + waitPage.RemoveFromParent(); + waitPage = null; + } + catch { } + }); + } MainPage.Log($"鍒锋柊涓汉淇℃伅澶辫触"); return; } @@ -152,13 +264,25 @@ if (roomResult.Code == StateCode.SUCCESS) { MainPage.Log($"璇诲彇鎴块棿淇℃伅鎴愬姛"); - var revData = Newtonsoft.Json.JsonConvert.DeserializeObject<SpatialApiPack>(roomResult.Data.ToString()); + var revData = JsonConvert.DeserializeObject<SpatialApiPack>(roomResult.Data.ToString()); if (revData == null) { revData = new SpatialApiPack(); } { SpatialInfo.CurrentSpatial.UpdateSpatialList(revData.list); + new System.Threading.Thread(() => + { + try + { + var ssd = System.Text.Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(revData.list)); + FileUtlis.Files.WriteFileByBytes("SpatialInfoData", ssd); + }catch(Exception ex) + { + MainPage.Log($"{this.GetType()}:淇濆瓨鎴块棿淇℃伅寮傚父锛歿ex.Message}"); + } + }) + { IsBackground = true }.Start(); } } else @@ -178,7 +302,7 @@ FunctionList.List.ClearDatas(); //MainPage.Log($"============璁惧============寮�濮�" + FunctionList.List.Functions.Count); //MainPage.Log($"璇诲彇璁惧淇℃伅鎴愬姛"); - //MainPage.Log($"sid鍒楄〃鑾峰彇====" + deviceResult.Data.ToString()); + MainPage.Log($"sid鍒楄〃鑾峰彇====\r\n" , deviceResult.Data.ToString()); var deviceList = JsonConvert.DeserializeObject<DevcieApiPack>(deviceResult.Data.ToString()); if (deviceList == null) { @@ -249,7 +373,6 @@ //} //======================鑾峰彇鍙瀵硅璁惧鍒楄〃==================== - bool isInterphoneType_HDL = false;//鏄惁涓篐DLLinphone鍙瀵硅 bool isInterphoneType_FREEVIEW = false;//鏄惁涓哄叏瑙嗛�氬彲瑙嗗璁� var videoInfo = VideoSend.GetVideoInfoList(); if (videoInfo.Code == StateCode.SUCCESS) @@ -265,91 +388,7 @@ { UI.UI2.PersonalCenter.PirDevice.PirSend.LcSubAccessToken = video.subAccountToken; } - else if (video.interphoneType == InterphoneType.HDL.ToString()) - { - isInterphoneType_HDL = true; - DB_ResidenceData.Instance.SupportFacePass = true; - DB_ResidenceData.Instance.SaveResidenceData(); - DB_ResidenceData.Instance.SupportFVDevice = true; - } - else if (video.interphoneType == InterphoneType.FREEVIEW.ToString()) - { -#if __IOS__ - try - { - FunctionList.List.videoIntercom.Remove(video); - --i; - }catch(Exception ex) - { - MainPage.Log($"ios 鍏ㄨ閫氬紓甯� : {ex.Message}"); - } - -#else - //涓哄叏瑙嗛�氬彲瑙嗗璁� - DB_ResidenceData.Instance.SupportFacePass = true; - Entity.DB_ResidenceData.Instance.SupportVisitorManage = true; - Entity.DB_ResidenceData.Instance.SupportFVDevice = true; - isInterphoneType_FREEVIEW = true; -#endif - } } - } - - - //======================鑾峰彇Sip璐﹀彿骞朵笖鍒濆鍖朣DK鍙瀵硅璁惧鍒楄〃==================== - //濡傛灉妫�娴嬬嚎绋嬫病鍚姩锛屾墠缁х画涓嬮潰鎿嶄綔 鍥犱负App鏈夊彲鑳藉垰鍚姩椹笂鏀跺埌鎺ㄩ�佷簡锛岀劧鍚庢墠鎵ц鍒拌繖閲� - if (HDLLinphone.Current.CheckIncomingCallThreadIsNull()) - { - - //褰撳墠浣忓畢鏄疕DL鍙瀵硅绫诲瀷鐨勮澶� - if (isInterphoneType_HDL) - { - //HDLLinphone鍙瀵硅,鑾峰彇Sip璐﹀彿骞跺垵濮嬪寲SDK - HDLCallVideoInfo callVideoInfo = new HDLCallVideoInfo(); - callVideoInfo.HomeId = DB_ResidenceData.Instance.CurrentRegion.id; - callVideoInfo.InterphoneType = InterphoneType.HDL.ToString(); - HDLLinphone.Current.GetHDLSipInfoAndInitSDK(callVideoInfo); - } - else if (isInterphoneType_FREEVIEW) - { - //HDLLinphone鍙瀵硅,鑾峰彇Sip璐﹀彿骞跺垵濮嬪寲SDK - HDLCallVideoInfo callVideoInfo = new HDLCallVideoInfo(); - callVideoInfo.HomeId = DB_ResidenceData.Instance.CurrentRegion.id; - callVideoInfo.InterphoneType = InterphoneType.FREEVIEW.ToString(); - HDLLinphone.Current.GetHDLSipInfoAndInitSDK(callVideoInfo); - } - else - { - Utlis.WriteLine("褰撳墠浣忓畢涓嶆敮鎸丠DL鍙瀵硅,閫�鍑虹櫥褰曟墍鏈夎处鍙�"); - //褰撳墠浣忓畢涓嶆敮鎸丠DL鍙瀵硅 - HDLLinphone.Current.LogoutAllAccount(); - } - } - - - - //======================鐧诲綍鍏ㄨ閫�==================== - if (isInterphoneType_FREEVIEW) - { - -#if __IOS__ - //string systemVersion = UIKit.UIDevice.CurrentDevice.SystemVersion; - //string errorVersion = "16.2.0"; - //if (systemVersion.CompareTo(errorVersion) < 0)///鍏ㄨ閫氫笉鍏煎ios16浠ヤ笂鐨勭郴缁燂紝涓嶈鍔犺浇杩欎釜鍏� - //{ - // List<VisitorTempPassword> dataList = new List<VisitorTempPassword>(); - // Dictionary<string, object> dictionary = new Dictionary<string, object>(); - // dictionary.Add("homeId", Entity.DB_ResidenceData.Instance.CurrentRegion.id); - // var requestJson = HttpUtil.GetSignRequestJson(dictionary); - // ResponsePackNew pack = HttpUtil.RequestHttpsPost(NewAPI.Api_Post_GetExtMemberInfo, requestJson); - // if (pack != null) - // { - // var data = JsonConvert.DeserializeObject<FreeviewMemberInfo>(pack.Data.ToString()); - // //鐧诲綍鍏ㄨ閫� - // Shared.IOS.HDLFVSDK.Video.Init("", data.extUserId, DB_ResidenceData.Instance.CurrentRegion.id, "78FF1E4D-FC0A-4E71-9B79-0448E4460BD7", "T0001", "120.77.53.170:9700", "120.77.53.170:21664"); - // } - //} -#endif } } @@ -496,11 +535,12 @@ //======================瀹夐槻==================== GetSecurityList(); + + //===================璇诲彇閫昏緫鍒楄〃==================== + Logic.LogicList.Clear();//涓婚〉涓嬫媺寮哄埗鍒锋柊鑷姩鍖栧垪琛� + MainView.GetLogicList();//璇诲彇鑷姩鍖栧垪琛� }) { IsBackground = true }.Start(); - - //===================璇诲彇閫昏緫鍒楄〃========================== - Logic.LogicList.Clear();//涓婚〉涓嬫媺寮哄埗鍒锋柊鑷姩鍖栧垪琛� //======================娉ㄥ唽鎺ㄩ��==================== httpRequest.RegisteredPush(); -- Gitblit v1.8.0