From c53a46858f11e00490eb1b734402649536f0b7e2 Mon Sep 17 00:00:00 2001 From: wxr <wxr@hdlchina.com.cn> Date: 星期二, 11 六月 2024 14:19:13 +0800 Subject: [PATCH] 修复门锁呼叫问题 --- HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/BrandListPage.cs | 2 HDL-ON_Android/Properties/AndroidManifest.xml | 2 HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs | 49 ++++++--- HDL_ON/Common/Constant.cs | 2 .vs/Santan-OnPro-Project/xs/UserPrefs.xml | 38 +++--- HDL_ON/Common/HDLCommon.cs | 155 +++++++++++++++++++++++++++---- 6 files changed, 188 insertions(+), 60 deletions(-) diff --git a/.vs/Santan-OnPro-Project/xs/UserPrefs.xml b/.vs/Santan-OnPro-Project/xs/UserPrefs.xml index 768689f..ff7d163 100644 --- a/.vs/Santan-OnPro-Project/xs/UserPrefs.xml +++ b/.vs/Santan-OnPro-Project/xs/UserPrefs.xml @@ -1,7 +1,4 @@ -锘�<Properties StartupConfiguration="{D998E133-F0DD-4760-BE3C-461632F54DA4}|Default"> - <MonoDevelop.Ide.ItemProperties.APP__IOS Xamarin.HotReload.MonoInterpreterErrorInfoBar.APP__IOS.HideInfoBar="True" PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneSimulatorTarget.42525798-FD1A-478E-89EB-FD4A5C2176ED" /> - <MonoDevelop.Ide.ItemProperties.APP__Android Xamarin.HotReload.WrongLinkerErrorInfoBar.APP__Android.HideInfoBar="True" PreferredExecutionTarget="Android.SelectDevice" /> - <MultiItemStartupConfigurations /> +锘�<Properties StartupConfiguration="{09712674-2A38-407B-B1E2-560B2C352F9A}|Default"> <MonoDevelop.Ide.DebuggingService.Breakpoints> <BreakpointStore> <Breakpoint file="/Users/kaede/Desktop/Projcect/Santan-OnPro-Project/HDL_ON/UI/UI2/2-Classification/SeriesFunctionListPage.cs" relfile="HDL_ON/UI/UI2/2-Classification/SeriesFunctionListPage.cs" line="25" column="1" /> @@ -13,23 +10,21 @@ <Breakpoint file="/Users/kaede/Desktop/Projcect/Santan-OnPro-Project/HDL_ON/DAL/Server/HttpServerRequest.cs" relfile="HDL_ON/DAL/Server/HttpServerRequest.cs" line="350" column="1" /> <Breakpoint file="/Users/kaede/Desktop/Projcect/Santan-OnPro-Project/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs" line="81" column="1" /> <Breakpoint file="/Users/kaede/Desktop/Projcect/Santan-OnPro-Project/HDL_ON/DAL/Server/HttpUtil.cs" relfile="HDL_ON/DAL/Server/HttpUtil.cs" line="326" column="1" /> - <Breakpoint file="/Users/kaede/Desktop/Projcect/Santan-OnPro-Project/HDL_ON/UI/UI1-Login/LoginPageBLL.cs" relfile="HDL_ON/UI/UI1-Login/LoginPageBLL.cs" line="733" column="1" /> <Breakpoint file="/Users/kaede/Desktop/Projcect/Santan-OnPro-Project/HDL_ON/Common/HDLCommon.cs" relfile="HDL_ON/Common/HDLCommon.cs" line="610" column="1" /> <Breakpoint file="/Users/kaede/Desktop/Projcect/Santan-OnPro-Project/HDL_ON/DAL/Server/HttpServerRequest.cs" relfile="HDL_ON/DAL/Server/HttpServerRequest.cs" line="3558" column="1" /> </BreakpointStore> </MonoDevelop.Ide.DebuggingService.Breakpoints> - <Xamarin.Addins.Core.Project ActiveDebugTarget="Android.3TG0221602005112" /> + <MonoDevelop.Ide.ItemProperties.APP__IOS Xamarin.HotReload.MonoInterpreterErrorInfoBar.APP__IOS.HideInfoBar="True" PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneDeviceTarget" /> + <MultiItemStartupConfigurations /> + <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug" /> <MonoDevelop.MonoDroid LastDeploySdkVersion="13.2.2.0" /> - <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/DAL/Server/HttpServerRequest.cs"> + <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs"> <Files> <File FileName="HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/VideDoorLockSend.cs" /> - <File FileName="HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs" /> - <File FileName="HDL_ON/Common/HDLCommon.cs" /> - <File FileName="HDL_ON/DAL/Server/HttpServerRequest.cs" Line="3565" Column="32" /> - <File FileName="HDL_ON/DAL/Server/NewAPI.cs" Line="1047" Column="29" /> - <File FileName="HDL-ON_iOS/Info.plist" /> - <File FileName="HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs" /> - <File FileName="HDL_ON/UI/UI1-Login/LoginPage.cs" Line="226" Column="18" /> + <File FileName="HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs" Line="358" Column="25" /> + <File FileName="HDL_ON/DAL/Server/HttpUtil.cs" Line="22" Column="41" /> + <File FileName="HDL_ON/DAL/Server/HttpServerRequest.cs" Line="3559" Column="1" /> + <File FileName="HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPage.cs" Line="632" Column="47" /> </Files> <Pads> <Pad Id="ProjectPad"> @@ -37,15 +32,19 @@ <Node name="Santan-OnPro-Project" expanded="True"> <Node name="HDL_ON"> <Node name="DAL" expanded="True"> - <Node name="Server" expanded="True"> - <Node name="HttpServerRequest.cs" selected="True" /> - </Node> + <Node name="Server" expanded="True" /> </Node> <Node name="UI" expanded="True"> <Node name="UI1-Login" expanded="True" /> <Node name="UI2" expanded="True"> + <Node name="3-Intelligence" expanded="True"> + <Node name="Automation" expanded="True" /> + </Node> + <Node name="4-PersonalCenter" expanded="True" /> <Node name="FuntionControlView" expanded="True"> - <Node name="VideoDoorLock" expanded="True" /> + <Node name="VideoDoorLock" expanded="True"> + <Node name="CommonMethod.cs" selected="True" /> + </Node> </Node> </Node> </Node> @@ -55,6 +54,7 @@ </Pad> </Pads> </MonoDevelop.Ide.Workbench> - <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug|iPhoneSimulator" /> <MonoDevelop.Ide.DebuggingService.PinnedWatches /> + <Xamarin.Addins.Core.Project ActiveDebugTarget="Android.3TG0221602005112" /> + <MonoDevelop.Ide.ItemProperties.APP__Android PreferredExecutionTarget="Android.SelectDevice" Xamarin.HotReload.WrongLinkerErrorInfoBar.APP__Android.HideInfoBar="True" /> </Properties> \ No newline at end of file diff --git a/HDL-ON_Android/Properties/AndroidManifest.xml b/HDL-ON_Android/Properties/AndroidManifest.xml index 31621c2..57f4228 100644 --- a/HDL-ON_Android/Properties/AndroidManifest.xml +++ b/HDL-ON_Android/Properties/AndroidManifest.xml @@ -1,5 +1,5 @@ 锘�<?xml version="1.0" encoding="utf-8"?> -<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionName="4.2.0" package="com.santan.smartcontrol" xmlns:tools="http://schemas.android.com/tools" android:versionCode="202405071"> +<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionName="4.2.0" package="com.santan.smartcontrol" xmlns:tools="http://schemas.android.com/tools" android:versionCode="202405072"> <uses-sdk android:minSdkVersion="26" android:targetSdkVersion="29" /> <uses-permission android:name="android.permission.RECEIVE_SMS" /> <!--绋嬪簭鍙互璇诲彇璁惧澶栭儴瀛樺偍绌洪棿(鍐呯疆SDcard鍜屽缃甋DCard)鐨勬枃浠讹紝鎴戠殑鏂囦欢绛�--> diff --git a/HDL_ON/Common/Constant.cs b/HDL_ON/Common/Constant.cs index 9c4b262..dabbd29 100644 --- a/HDL_ON/Common/Constant.cs +++ b/HDL_ON/Common/Constant.cs @@ -309,6 +309,8 @@ /// HDL鍙瀵硅 /// </summary> HDL_INTERPHONE, + //闂ㄩ攣 + DOOR_BELL, } /// <summary> diff --git a/HDL_ON/Common/HDLCommon.cs b/HDL_ON/Common/HDLCommon.cs index a1629e6..4bbd15f 100644 --- a/HDL_ON/Common/HDLCommon.cs +++ b/HDL_ON/Common/HDLCommon.cs @@ -7,8 +7,6 @@ using HDL_ON.Entity; using System.Threading; using HDL_ON.DriverLayer; -using System.Collections.Generic; - namespace HDL_ON { /// <summary> @@ -83,6 +81,68 @@ /// </summary> public void CheckIfNeedForceUpdate() { + System.Threading.Tasks.Task.Run(() => + { + try + { + var revertObj = new HttpServerRequest().CheckAppVersion(); + if (revertObj.Code == StateCode.SUCCESS) + { + if (revertObj.Data != null) + { + var appVersionRes = Newtonsoft.Json.JsonConvert.DeserializeObject<AppVersionResNew>(revertObj.Data.ToString()); + if (appVersionRes != null) + { + + var mForceUpdateInfo = new UpdateDialogInfo() + { + UpdateType = appVersionRes.isEnforce ? 2 : 1, + NewVersion = appVersionRes.version, + NewVersionUrl = appVersionRes.packageUrl + }; +#if __IOS__ + mForceUpdateInfo.NewVersionUrl = appVersionRes.packageUrl; +#endif + //瑙f瀽鏇存柊鍐呭璇︽儏 + //var reasonStrJson = GetReasonStrJson(appVersionRes.remark); + //if (reasonStrJson != null) + //{ + // if (Language.CurrentLanguage == "Chinese") + // { + // mForceUpdateInfo.ReasonStr = reasonStrJson.Chinese; + // } + // else + // { + // mForceUpdateInfo.ReasonStr = reasonStrJson.English; + // } + //} + mForceUpdateInfo.ReasonStr = appVersionRes.remark; + + if (appVersionRes.version != MainPage.VersionString) + { + Application.RunOnMainThread(() => + { + ShowForceUpdateDialog(mForceUpdateInfo); + }); + } + } + } + } + else + { + Utlis.WriteLine("璇锋眰澶辫触"); + } + } + catch (Exception ex) + { + //Shared.Utlis.WriteLine (ex.ToString ()); + } + finally + { + + } + + }); } @@ -113,6 +173,62 @@ /// </summary> public void ShowForceUpdateDialog(UpdateDialogInfo mUpdateDialogInfo) { + // 1.1 娌℃湁鏇存柊 杩斿洖 + if (mUpdateDialogInfo.UpdateType == 0) return; + // 1.2 鏈夋柊鐗堟湰浣嗘槸蹇界暐杩� 杩斿洖 + if (mUpdateDialogInfo.UpdateType == 1 && (OnAppConfig.Instance.IgnoreUpdateVersion == mUpdateDialogInfo.NewVersion)) return; + // 2.1 鏈夋柊鐗堟湰娌℃湁蹇界暐杩� 鎻愮ず鏇存柊 + if (mUpdateDialogInfo.UpdateType == 1) + { + Action okAction = () => + { + if (string.IsNullOrEmpty(mUpdateDialogInfo.NewVersionUrl)) return; + + HDLUtils.OpenUrl(mUpdateDialogInfo.NewVersionUrl); + }; + + Action cancelAction = () => + { + OnAppConfig.Instance.IgnoreUpdateVersion = mUpdateDialogInfo.NewVersion; + OnAppConfig.Instance.SaveConfig(); + }; + + //1鎻愮ず鏇存柊 + var dialog = new UpdateTipDialog(); + var tipStr = Language.StringByID(StringId.VersionNumber) + mUpdateDialogInfo.NewVersion; + dialog.ShowUpdateDialog(Language.StringByID(StringId.DiscoverNewVersion), tipStr, mUpdateDialogInfo.ReasonStr, okAction, cancelAction); + + } + else if (mUpdateDialogInfo.UpdateType == 2) //2.2 闇�瑕佸己鍒舵洿鏂� + { + //2寮哄埗鏇存柊 + //"1.鍙戠幇鏂扮増鏈珹pp,褰撳墠鐗堟湰宸插仠鐢�,椹笂鏇存柊!\n2.璇蜂笅杞藉拰瀹夎鏂扮増鏈�!....." + Action okAction = () => + { + if (string.IsNullOrEmpty(mUpdateDialogInfo.NewVersionUrl)) + { + Utlis.ShowTip(Language.StringByID(StringId.DataExceptionPleaseTryAgain)); + return; + }; + + HDLUtils.OpenUrl(mUpdateDialogInfo.NewVersionUrl); + }; + + //1鎻愮ず鏇存柊 + var dialog = new UpdateTipDialog(); + var tipStr = Language.StringByID(StringId.VersionNumber) + mUpdateDialogInfo.NewVersion; + dialog.ShowForcedUpdateDialog(Language.StringByID(StringId.DiscoverNewVersion), tipStr, mUpdateDialogInfo.ReasonStr, okAction); + } + else //3. 鍙渶鎻愮ず + { + //3鎻愮ず閫氱煡 + Action okAction = () => + { + + }; + var dialog = new UpdateTipDialog(); + dialog.ShowTipDialog(Language.StringByID(StringId.Tip), mUpdateDialogInfo.ReasonStr, okAction); + } } #endregion @@ -164,7 +280,7 @@ //鎶ヨ鎺ㄩ�佸脊绐楁彁绀� ShowAlarmPushMessage(jpushMessageInfo, true); //钀ょ煶闂ㄩ攣鎺ㄩ�� - //HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo); + HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo); } //else if (jpushMessageInfo.messageType == (PushMessageType.FLCall.ToString())) //{ @@ -291,13 +407,13 @@ { ShowAlarmPushMessage(jpushMessageInfo, false); //钀ょ煶闂ㄩ攣鎺ㄩ�� - //HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo); + HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo); } - //else if (jpushMessageInfo.messageType == (PushMessageType.DOOR_BELL.ToString())) - //{ - // //钀ょ煶闂ㄩ攣鎺ㄩ�� - // //HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo); - //} + else if (jpushMessageInfo.messageType == (PushMessageType.DOOR_BELL.ToString())) + { + //钀ょ煶闂ㄩ攣鎺ㄩ�� + HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DoorLockPush(jpushMessageInfo); + } } @@ -338,9 +454,12 @@ public void CheckLogout() { #if __IOS__ - try{ + try + { HDL_ON_iOS.AppDelegate.rootViewController.PopToRootViewController(false); - }catch(Exception ex){ + } + catch (Exception ex) + { MainPage.Log($"鍥炲埌璺熺被澶辫触:{ex.Message}"); } #else @@ -642,13 +761,8 @@ string strValue = list[i]; nSObject[i] = new Foundation.NSString(strValue); } - try - { - EZSDK.IOS.EZSDK.SharedInstance().ToEZDeviceListViewWithFilterTypes(nSObject); - }catch(Exception x) - { - MainPage.Log("Error", x.Message); - } + EZSDK.IOS.EZSDK.SharedInstance().ToEZDeviceListViewWithFilterTypes(nSObject); + #else @@ -664,7 +778,7 @@ { //2023骞�03鏈�29鏃�13:08:35 淇敼 Com.Videogo.Hdl.HDLEzvizSdk.Instance.Init(Application.Activity.Application, ezChildAccessToken, UserInfo.Current.LoginTokenString, UserInfo.Current.RefreshToken, OnAppConfig.Instance.RequestHttpsHost, "1aa98a90489b4838b966b57018b4b04b", 1, DB_ResidenceData.Instance.CurrentRegion.id, - HttpUtil.APP_KEY,HttpUtil.SECRET_KEY); + HttpUtil.APP_KEY, HttpUtil.SECRET_KEY); Com.Videogo.Hdl.HDLEzvizSdk.Instance.JumpToCameraListActivity(Shared.Application.Activity, list); //if (result) //{ @@ -694,7 +808,8 @@ } else { - IMessageCommon.Current.ShowErrorInfoAlter(result.Code); + if (result.Code != "-1") + IMessageCommon.Current.ShowErrorInfoAlter(result.Code); } } catch (Exception ex) diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/BrandListPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/BrandListPage.cs index f54199f..c14d567 100644 --- a/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/BrandListPage.cs +++ b/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/BrandListPage.cs @@ -28,7 +28,7 @@ var topView = new TopViewDiv(bodyView, Language.StringByID(StringId.FunctionBrand)); topView.maginY = 10; - topView.LoadTopView_Add3tyIot(action); + topView.LoadTopView(); bodyView.BackgroundColor = CSS_Color.MainBackgroundColor; diff --git a/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs b/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs index 8f6514e..916e915 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs @@ -52,6 +52,10 @@ this.InitializationAndroidData((isEzChildAccessToken) => { + if (!isEzChildAccessToken) + { + return; + } this.SunThread(() => { var list = this.GetVideoDoorLockLockModelsList("notAllowedConfigNetworkModels"); @@ -180,13 +184,19 @@ private void SkipRTVActivity(string deviceSerial, string deviceId, string spk, string msgId) { -#if __IOS__ //鎵撳紑钀ょ煶瑙嗛鐣岄潰 - EZSDK.IOS.EZSDK.SharedInstance().PlayWithDeviceSerial(deviceSerial, deviceId, spk, msgId); - + this.InitializationAndroidData((isBools) => + { + this.MainThread(() => + { +#if __IOS__ + EZSDK.IOS.EZSDK.SharedInstance().PlayWithDeviceSerial(deviceSerial, deviceId, spk, msgId); #else - HDLEzvizSdk.Instance.JumpToEZRealPlayActivity(Application.Activity, deviceId, deviceSerial, spk, msgId); + HDLEzvizSdk.Instance.JumpToEZRealPlayActivity(Application.Activity, deviceId, deviceSerial, spk, msgId); #endif + }); + }); + } @@ -332,6 +342,7 @@ return lockModels.notAllowedConfigNetworkModels; } } + /// <summary> /// 闂ㄩ攣鎺ㄩ�� /// </summary> @@ -358,22 +369,21 @@ { return; } - //if (jpushMessageInfo.messageType.Contains(PushMessageType.DOOR_BELL.ToString())) - //{ - // ///鎵撳紑瑙嗛闂ㄩ攣 - // string currentTimeStr = Utlis.GetTimestamp(); // 褰撳墠鏃堕棿 + if (jpushMessageInfo.messageType.Contains(PushMessageType.DOOR_BELL.ToString())) + { + ///鎵撳紑瑙嗛闂ㄩ攣 + string currentTimeStr = Utlis.GetTimestamp(); // 褰撳墠鏃堕棿 - // if (string.IsNullOrEmpty(expantContent.currentTime) && string.IsNullOrEmpty(currentTimeStr) && (long.Parse(currentTimeStr) - long.Parse(expantContent.currentTime)) > 30000) - // { // 瓒呮椂30s - // this.SkipRTVActivity(expantContent.devSerial, expantContent.deviceId, expantContent.spk, true); - // } - // else - // { - // this.SkipRTVActivity(expantContent.devSerial, expantContent.deviceId, expantContent.spk, expantContent.msgId); - // } - //} - //else - if (jpushMessageInfo.messageType.Contains(PushMessageType.Alarm.ToString())) + if (string.IsNullOrEmpty(expantContent.currentTime) && string.IsNullOrEmpty(currentTimeStr) && (long.Parse(currentTimeStr) - long.Parse(expantContent.currentTime)) > 30000) + { // 瓒呮椂30s + this.SkipRTVActivity(expantContent.devSerial, expantContent.deviceId, expantContent.spk, true); + } + else + { + this.SkipRTVActivity(expantContent.devSerial, expantContent.deviceId, expantContent.spk, expantContent.msgId); + } + } + else if (jpushMessageInfo.messageType.Contains(PushMessageType.Alarm.ToString())) { //浣庣數閲忔帹閫� this.UpdateDoorLockState(PushMessageType.Alarm); @@ -391,6 +401,7 @@ }); } + /// <summary> /// 鏇存柊寮�閿佸浘鏍囧拰鐢垫睜鐘舵�� /// </summary> -- Gitblit v1.8.0