From 25429f085093d89d543a0b90e30d0d62d1b7dac9 Mon Sep 17 00:00:00 2001 From: hxb <hxb@hdlchina.com.cn> Date: 星期二, 30 八月 2022 09:37:38 +0800 Subject: [PATCH] 合并了IOS的代码 --- ZigbeeApp/Shared/Phone/UserCenter/UserMain/SecondAuthenticationForm.cs | 259 +++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 196 insertions(+), 63 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/UserMain/SecondAuthenticationForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/UserMain/SecondAuthenticationForm.cs index 44d8fc4..f792ccc 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/UserMain/SecondAuthenticationForm.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/UserMain/SecondAuthenticationForm.cs @@ -23,6 +23,13 @@ //璁剧疆澶撮儴淇℃伅 base.SetTitleText(Language.StringByID(R.MyInternationalizationString.uSecondAuthentication)); + var btntitle = (Button)topFrameLayout.GetTagByKey("txtTitle"); + btntitle.MouseLongEventHandler += (sender, e) => + { + //鏄剧ず鏁板瓧鍛戒护绐楀彛 + this.ShowKeyNumberComandDialog(); + }; + //鍒濆鍖栦腑閮ㄤ俊鎭� this.InitMiddleFrame(); } @@ -40,34 +47,44 @@ frameTop.BackgroundColor = UserCenterColor.Current.White; bodyFrameLayout.AddChidren(frameTop); - var rowFinger = new FrameRowControl(frameTop.rowSpace / 2); - rowFinger.UseClickStatu = false; - frameTop.AddChidren(rowFinger); - //鎸囩汗楠岃瘉 - var btnFinger = rowFinger.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uFingerprintAuthentication), 400, 58); - btnFinger.Y = Application.GetRealHeight(12) + rowFinger.chidrenYaxis; - rowFinger.AddChidren(btnFinger, ChidrenBindMode.NotBind); - //浠呭鏈満鏈夋晥 - var btnEffect= rowFinger.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uOnlyEffectToThisPhone), 400, 40); - btnEffect.Y = Application.GetRealHeight(72) + rowFinger.chidrenYaxis; - btnEffect.TextSize = 12; - btnEffect.TextColor = UserCenterColor.Current.TextGrayColor1; - rowFinger.AddChidren(btnEffect, ChidrenBindMode.NotBind); - //寮�鍏虫寜閽� - var btnFingerSwicth = rowFinger.AddMostRightSwitchIcon(); - btnFingerSwicth.IsSelected = UserCenterResourse.Option.FingerprintAuthentication; - //搴曠嚎 - rowFinger.AddBottomLine(); + MostRightIconControl btnFingerSwicth = null; + var touchIDSupper = TouchIDUtils.getTouchIDSupperType(); + if (touchIDSupper == TouchIDUtils.TouchIDSupperType.TouchID) + { + var rowFinger = new FrameRowControl(frameTop.rowSpace / 2); + rowFinger.UseClickStatu = false; + frameTop.AddChidren(rowFinger); + //鎸囩汗楠岃瘉 + var btnFinger = rowFinger.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uFingerprintAuthentication), 400, 58); + btnFinger.Y = Application.GetRealHeight(12) + rowFinger.chidrenYaxis; + rowFinger.AddChidren(btnFinger, ChidrenBindMode.NotBind); + //浠呭鏈満鏈夋晥 + var btnEffect = rowFinger.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uOnlyEffectToThisPhone), 400, 40); + btnEffect.Y = Application.GetRealHeight(72) + rowFinger.chidrenYaxis; + btnEffect.TextSize = 12; + btnEffect.TextColor = UserCenterColor.Current.TextGrayColor1; + rowFinger.AddChidren(btnEffect, ChidrenBindMode.NotBind); + //寮�鍏虫寜閽� + btnFingerSwicth = rowFinger.AddMostRightSwitchIcon(); + btnFingerSwicth.IsSelected = UserCenterResourse.AccountOption.FingerprintAuthentication; + //搴曠嚎 + rowFinger.AddBottomLine(); + } var rowPsw = new FrameRowControl(frameTop.rowSpace / 2); frameTop.AddChidren(rowPsw); + //濡傛灉杩欎釜鎵嬫満涓嶆敮鎸乀ouchId鐨勮瘽,鍒欏鍣ㄥ噺鍘昏繖涓鐨勯珮搴� + if (touchIDSupper != TouchIDUtils.TouchIDSupperType.TouchID) + { + frameTop.Height -= rowPsw.Height; + } //瀵嗙爜楠岃瘉 rowPsw.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uPasswordAuthentication), 400); //鍙崇澶� rowPsw.AddRightArrow(); //鍘昏缃� var btnSettion1 = rowPsw.AddMostRightView(Language.StringByID(R.MyInternationalizationString.uGotoSettion), 400); - if (string.IsNullOrEmpty(UserCenterResourse.Option.PswAuthentication) == false) + if (string.IsNullOrEmpty(UserCenterResourse.AccountOption.PswAuthentication) == false) { //鍘讳慨鏀� btnSettion1.TextID = R.MyInternationalizationString.uGotoEditor; @@ -83,20 +100,25 @@ rowGesture.AddRightArrow(); //鍘昏缃� var btnSettion2 = rowGesture.AddMostRightView(Language.StringByID(R.MyInternationalizationString.uGotoSettion), 400); - if (string.IsNullOrEmpty(UserCenterResourse.Option.GestureAuthentication) == false) + if (string.IsNullOrEmpty(UserCenterResourse.AccountOption.GestureAuthentication) == false) { //鍘讳慨鏀� btnSettion2.TextID = R.MyInternationalizationString.uGotoEditor; } //浜屾瀹夊叏楠岃瘉灏嗙敤浜庝笅鍒楁搷浣� - var btnTitle = new NormalViewControl(800, 49, true); + var btnTitle = new NormalViewControl(800, 50, true); btnTitle.X = ControlCommonResourse.XXLeft; - btnTitle.Y = frameTop.Bottom + Application.GetRealHeight(35); + btnTitle.Y = frameTop.Bottom + Application.GetRealHeight(34); btnTitle.TextSize = 12; btnTitle.TextColor = UserCenterColor.Current.TextGrayColor3; btnTitle.TextID = R.MyInternationalizationString.uSecondarySecurityWillBeUsedForTheFollowingOperations; bodyFrameLayout.AddChidren(btnTitle); + btnTitle.ButtonClickEvent += (sender, e) => + { + //闅愬尶鍔熻兘鐐瑰嚮 + this.HideOptionClick(btnTitle); + }; var frameButtom = new FrameListControl(12); frameButtom.Y = btnTitle.Bottom + Application.GetRealHeight(23); @@ -133,7 +155,7 @@ var btnLockSwicth = rowLock.AddMostRightSwitchIcon(); //搴曠嚎 rowLock.AddBottomLine(); - btnLockSwicth.IsSelected = UserCenterResourse.Option.DoorUnLockByRemote; + btnLockSwicth.IsSelected = UserCenterResourse.AccountOption.DoorUnLockByRemote; var rowSafety = new FrameRowControl(frameButtom.rowSpace / 2); rowSafety.UseClickStatu = false; @@ -146,45 +168,48 @@ btnMsg2.TextColor = UserCenterColor.Current.TextGrayColor2; //鎸囩汗楠岃瘉 - btnFingerSwicth.ButtonClickEvent += (sender, e) => + if (btnFingerSwicth != null) { - if (btnFingerSwicth.IsSelected == false) + btnFingerSwicth.ButtonClickEvent += (sender, e) => { - TouchIDUtils.TouchIDSupperType type = TouchIDUtils.getTouchIDSupperType(); - if (type == TouchIDUtils.TouchIDSupperType.None) + if (btnFingerSwicth.IsSelected == false) { - //寮�鍚寚绾归獙璇佸け璐ワ紒璇峰墠寰�鎵嬫満{0}璁剧疆寮�鍚寚绾瑰紑閿侀獙璇� - string msg = Language.StringByID(R.MyInternationalizationString.uUseFingerprintAuthenticationFailMsg); - msg = msg.Replace("{0}", "\r\n"); - this.ShowMassage(ShowMsgType.Normal, msg); - return; + TouchIDUtils.TouchIDSupperType type = TouchIDUtils.getTouchIDSupperType(); + if (type == TouchIDUtils.TouchIDSupperType.None) + { + //寮�鍚寚绾归獙璇佸け璐ワ紒璇峰墠寰�鎵嬫満{0}璁剧疆寮�鍚寚绾瑰紑閿侀獙璇� + string msg = Language.StringByID(R.MyInternationalizationString.uUseFingerprintAuthenticationFailMsg); + msg = msg.Replace("{0}", "\r\n"); + this.ShowMassage(ShowMsgType.Normal, msg); + return; + } + //灏員ouch ID鐢ㄤ簬銆孼igBee銆峽0}鏇存敼瀹夐槻璁剧疆鍜屽紑鍚棬閿佹椂浣跨敤 + string msg2 = Language.StringByID(R.MyInternationalizationString.uUseFingerprintAuthenticationMsg); + msg2 = msg2.Replace("{0}", "\r\n"); + this.ShowMassage(ShowMsgType.Confirm, msg2, () => + { + //濡傛灉璁剧疆鏈夊畨鍏ㄩ獙璇�,鎯宠淇敼瀹�,蹇呴』鍏堥�氳繃瀹夊叏楠岃瘉 + //濡傛灉娌℃湁璁剧疆鏈夊畨鍏ㄩ獙璇�,鍒欐棤闇�楠岃瘉 + HdlCheckLogic.Current.CheckSecondarySecurity( + () => { this.DoFingerprintAuthentication(btnFingerSwicth, btnLockSwicth); },//澶勭悊鎸囩汗楠岃瘉 + () => { this.DoFingerprintAuthentication(btnFingerSwicth, btnLockSwicth); });//澶勭悊鎸囩汗楠岃瘉 + }); } - //灏員ouch ID鐢ㄤ簬銆孼igBee銆峽0}鏇存敼瀹夐槻璁剧疆鍜屽紑鍚棬閿佹椂浣跨敤 - string msg2 = Language.StringByID(R.MyInternationalizationString.uUseFingerprintAuthenticationMsg); - msg2 = msg2.Replace("{0}", "\r\n"); - this.ShowMassage(ShowMsgType.Confirm, msg2, () => + else { //濡傛灉璁剧疆鏈夊畨鍏ㄩ獙璇�,鎯宠淇敼瀹�,蹇呴』鍏堥�氳繃瀹夊叏楠岃瘉 //濡傛灉娌℃湁璁剧疆鏈夊畨鍏ㄩ獙璇�,鍒欐棤闇�楠岃瘉 HdlCheckLogic.Current.CheckSecondarySecurity( - () => { this.DoFingerprintAuthentication(btnFingerSwicth, btnLockSwicth); },//澶勭悊鎸囩汗楠岃瘉 - () => { this.DoFingerprintAuthentication(btnFingerSwicth, btnLockSwicth); });//澶勭悊鎸囩汗楠岃瘉 - }); - } - else - { - //濡傛灉璁剧疆鏈夊畨鍏ㄩ獙璇�,鎯宠淇敼瀹�,蹇呴』鍏堥�氳繃瀹夊叏楠岃瘉 - //濡傛灉娌℃湁璁剧疆鏈夊畨鍏ㄩ獙璇�,鍒欐棤闇�楠岃瘉 - HdlCheckLogic.Current.CheckSecondarySecurity( - () => { this.DoFingerprintAuthentication(btnFingerSwicth, btnLockSwicth); },//澶勭悊鎸囩汗楠岃瘉 - () => { this.DoFingerprintAuthentication(btnFingerSwicth, btnLockSwicth); });//澶勭悊鎸囩汗楠岃瘉 - } - }; + () => { this.DoFingerprintAuthentication(btnFingerSwicth, btnLockSwicth); },//澶勭悊鎸囩汗楠岃瘉 + () => { this.DoFingerprintAuthentication(btnFingerSwicth, btnLockSwicth); });//澶勭悊鎸囩汗楠岃瘉 + } + }; + } //瀵嗙爜楠岃瘉 rowPsw.ButtonClickEvent += (sender, e) => { //濡傛灉娌℃湁瀵嗙爜楠岃瘉 - if (string.IsNullOrEmpty(UserCenterResourse.Option.PswAuthentication) == true) + if (string.IsNullOrEmpty(UserCenterResourse.AccountOption.PswAuthentication) == true) { //濡傛灉璁剧疆鏈夊叾浠栭獙璇佹柟寮�,鍒欓渶瑕侀獙璇�,鍚﹀垯鐩存帴璺宠繃楠岃瘉 HdlCheckLogic.Current.CheckSecondarySecurity( @@ -201,7 +226,7 @@ rowGesture.ButtonClickEvent += (sender, e) => { //濡傛灉娌℃湁鎵嬪娍楠岃瘉 - if (string.IsNullOrEmpty(UserCenterResourse.Option.GestureAuthentication) == true) + if (string.IsNullOrEmpty(UserCenterResourse.AccountOption.GestureAuthentication) == true) { //濡傛灉璁剧疆鏈夊叾浠栭獙璇佹柟寮�,鍒欓渶瑕侀獙璇�,鍚﹀垯鐩存帴璺宠繃楠岃瘉 HdlCheckLogic.Current.CheckSecondarySecurity( @@ -251,22 +276,22 @@ return; } - UserCenterResourse.Option.FingerprintAuthentication = !btnFingerSwicth.IsSelected; - UserCenterResourse.Option.Save(); + UserCenterResourse.AccountOption.FingerprintAuthentication = !btnFingerSwicth.IsSelected; + UserCenterResourse.AccountOption.Save(); //閲嶆柊鍒锋柊鐣岄潰 this.InitMiddleFrame(); } else { - if (string.IsNullOrEmpty(UserCenterResourse.Option.GestureAuthentication) == true - && string.IsNullOrEmpty(UserCenterResourse.Option.PswAuthentication) == true + if (string.IsNullOrEmpty(UserCenterResourse.AccountOption.GestureAuthentication) == true + && string.IsNullOrEmpty(UserCenterResourse.AccountOption.PswAuthentication) == true && btnLockSwicth.IsSelected == true) { //鎵�鏈夐獙璇侀兘鍙栨秷浜�,鍒欏彇娑堣繙绋嬪紑閿佸姛鑳� - UserCenterResourse.Option.DoorUnLockByRemote = false; + UserCenterResourse.AccountOption.DoorUnLockByRemote = false; } - UserCenterResourse.Option.FingerprintAuthentication = !btnFingerSwicth.IsSelected; - UserCenterResourse.Option.Save(); + UserCenterResourse.AccountOption.FingerprintAuthentication = !btnFingerSwicth.IsSelected; + UserCenterResourse.AccountOption.Save(); //閲嶆柊鍒锋柊鐣岄潰 this.InitMiddleFrame(); } @@ -283,11 +308,11 @@ private void DoRemoteUnLocks(MostRightIconControl btnLockSwicth) { if (btnLockSwicth.IsSelected == false - && string.IsNullOrEmpty(UserCenterResourse.Option.GestureAuthentication) == true - && string.IsNullOrEmpty(UserCenterResourse.Option.PswAuthentication) == true) + && string.IsNullOrEmpty(UserCenterResourse.AccountOption.GestureAuthentication) == true + && string.IsNullOrEmpty(UserCenterResourse.AccountOption.PswAuthentication) == true) { TouchIDUtils.TouchIDSupperType type = TouchIDUtils.getTouchIDSupperType(); - if (type == TouchIDUtils.TouchIDSupperType.None || UserCenterResourse.Option.FingerprintAuthentication == false) + if (type == TouchIDUtils.TouchIDSupperType.None || UserCenterResourse.AccountOption.FingerprintAuthentication == false) { //杩滅▼寮�閿佸紑鍚け璐ワ紝璇峰厛璁剧疆{0}浜屾瀹夊叏楠岃瘉鏂瑰紡 string msg = Language.StringByID(R.MyInternationalizationString.uUseUnLockByRemoteFailMsg); @@ -299,8 +324,8 @@ return; } } - UserCenterResourse.Option.DoorUnLockByRemote = !btnLockSwicth.IsSelected; - UserCenterResourse.Option.Save(); + UserCenterResourse.AccountOption.DoorUnLockByRemote = !btnLockSwicth.IsSelected; + UserCenterResourse.AccountOption.Save(); //閲嶆柊鍒锋柊鐣岄潰 this.InitMiddleFrame(); } @@ -321,5 +346,113 @@ } #endregion + + #region 鈻� 闅愬尶鍔熻兘___________________________ + + /// <summary> + /// 鐐瑰嚮鍚堣 + /// </summary> + private int clickCount = 0; + /// <summary> + /// 鐐瑰嚮鐨勯偅鐬棿鐨勬椂闂� + /// </summary> + private DateTime clickTime; + /// <summary> + /// 闅愬尶鍔熻兘 + /// </summary> + private void HideOptionClick(NormalViewControl btnTitle) + { + if (clickCount == 0) + { + clickTime = DateTime.Now; + } + clickCount++; + if (clickCount >= 10) + { + if ((DateTime.Now - clickTime).TotalSeconds > 3) + { + clickCount = 0; + return; + } + btnTitle.CanClick = false; + HdlThreadLogic.Current.RunThread(() => + { + this.ShowProgressBar(); + var result = HdlBackupLogic.Current.LoadHideOption(); + this.CloseProgressBar(); + if (result == true) + { + this.ShowMassage(ShowMsgType.Tip, "鍒锋柊闅愬尶閰嶇疆鎴愬姛"); + } + else + { + this.ShowMassage(ShowMsgType.Tip, "鍒锋柊闅愬尶閰嶇疆澶辫触"); + } + }); + } + } + + /// <summary> + /// 鏄剧ず鏁板瓧鍛戒护绐楀彛 + /// </summary> + private void ShowKeyNumberComandDialog() + { + //鐢熸垚涓�涓脊绐楃敾闈� + var dialogForm = new DialogInputControl(); + dialogForm.SetTitleText("?????"); + + //鎸変笅纭鎸夐挳 + dialogForm.ComfirmClickEvent += ((textValue) => + { + dialogForm.CloseDialog(); + if (textValue.StartsWith("2887") == true) + { + var myTime = DateTime.Now; + string strTime1 = myTime.ToString("HHmm"); + int value1 = Convert.ToInt32(strTime1.Substring(3, 1)); + string check1 = "2887" + strTime1 + (7 + value1).ToString(); + + myTime = myTime.AddMinutes(-1); + string strTime2 = myTime.ToString("HHmm"); + int value2 = Convert.ToInt32(strTime2.Substring(3, 1)); + string check2 = "2887" + strTime2 + (7 + value2).ToString(); + + myTime = myTime.AddMinutes(2); + string strTime3 = myTime.ToString("HHmm"); + int value3 = Convert.ToInt32(strTime3.Substring(3, 1)); + string check3 = "2887" + strTime3 + (7 + value3).ToString(); + + if (textValue == check1 || textValue == check2 || textValue == check3) + { + //寮�鍚殣钘忚彍鍗� + UserCenterResourse.HideOption.CenterHideMenu = 1; + } + } + if (textValue == "84651666") + { + //鏄剧ず璁惧鍘嗗彶鐗堟湰 + UserCenterResourse.HideOption.DeviceHistory = 1; + } + if (textValue == "12349") + { + //寮哄埗璺宠浆鐪熷疄璁惧鐣岄潰 + UserCenterResourse.HideOption.GotoRealDeviceForm = 1; + } + if (textValue == "12348") + { + //寮哄埗璺宠浆缃戝叧鐣岄潰 + UserCenterResourse.HideOption.GotoGatewayProductInfoForm = 1; + } + if (textValue == "abcdef1") + { + //寮哄埗鍙樻洿甯稿紑妯″紡鐨勬椂闂翠负鍒嗛挓 + UserCenterResourse.HideOption.DoorLockNomallyOpenTimeMode = 1; + } + + this.ShowMassage(ShowMsgType.Tip, "Ok!"); + }); + } + + #endregion } } -- Gitblit v1.8.0