using System; 
 | 
using Shared; 
 | 
namespace HDL_ON.UI 
 | 
{ 
 | 
    /// <summary> 
 | 
    /// app解锁界面 
 | 
    /// </summary> 
 | 
    public class AppUnlockPage 
 | 
    { 
 | 
        DateTime unlockTime = DateTime.MinValue; 
 | 
        void LoadOption() 
 | 
        { 
 | 
            if (MainPage.LoginUser == null) 
 | 
            { 
 | 
                return; 
 | 
            } 
 | 
            Action action = () => 
 | 
            { 
 | 
                unlockTime = DateTime.Now; 
 | 
            }; 
 | 
            //1:验证指纹 
 | 
            if (MainPage.LoginUser.appUnlockType.Contains("3")) 
 | 
            { 
 | 
                Action fAction = () => 
 | 
                { 
 | 
                    LoadOption(); 
 | 
                }; 
 | 
                LoadGesturePage("7", fAction); 
 | 
                TouchIDUtils.Instance.showTouchIDWithDescribe(null, Language.StringByID(StringId.PleaseVerifyTheFingerprint)); 
 | 
                TouchIDUtils.Instance.OnHDLTouchIDStateBackEvent = (sender1, e) => 
 | 
                { 
 | 
                    if (e == TouchIDUtils.TouchIDState.Success) 
 | 
                    { 
 | 
                        MainPage.Log("KK:TouchID验证成功"); 
 | 
                        unlockTime = DateTime.Now; 
 | 
                        //MainPage.BasePageView.RemoveAt(MainPage.BasePageView.ChildrenCount - 1); 
 | 
                        MainPage.BasePageView.GetChildren(MainPage.BasePageView.ChildrenCount - 1).RemoveFromParent(); 
 | 
                    } 
 | 
                    else 
 | 
                    { 
 | 
                        ///将验证指纹的页面移除 
 | 
                        //MainPage.BasePageView.RemoveAt(MainPage.BasePageView.ChildrenCount - 1); 
 | 
                        MainPage.BasePageView.GetChildren(MainPage.BasePageView.ChildrenCount - 1).RemoveFromParent(); 
 | 
  
 | 
                        if (MainPage.LoginUser.appUnlockType.Contains("1")) 
 | 
                        { 
 | 
                            var page = new AppUnlockPasswordPage(MainPage.LoginUser.appUnlockPasswrod, action); 
 | 
                            MainPage.BasePageView.AddChidren(page); 
 | 
                            page.LoadPage("7"); 
 | 
                            //MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; 
 | 
                        } 
 | 
                        else if (MainPage.LoginUser.appUnlockType.Contains("2")) 
 | 
                        { 
 | 
                            var page = new AppUnlockGesturePage(MainPage.LoginUser.appUnlockPasswrod, action); 
 | 
                            MainPage.BasePageView.AddChidren(page); 
 | 
                            page.LoadPage("7"); 
 | 
                            //MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; 
 | 
                        } 
 | 
                    } 
 | 
                }; 
 | 
                return; 
 | 
            } 
 | 
            else if (MainPage.LoginUser.appUnlockType.Contains("4")) 
 | 
            { 
 | 
                //Face ID验证 
 | 
                // 
 | 
                return; 
 | 
            } 
 | 
            else if (MainPage.LoginUser.appUnlockType.Contains("1")) 
 | 
            { 
 | 
                var page = new AppUnlockPasswordPage(MainPage.LoginUser.appUnlockPasswrod, action); 
 | 
                MainPage.BasePageView.AddChidren(page); 
 | 
                page.LoadPage("7"); 
 | 
                //MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; 
 | 
                return; 
 | 
            } 
 | 
            else if (MainPage.LoginUser.appUnlockType.Contains("2")) 
 | 
            { 
 | 
                var page = new AppUnlockGesturePage(MainPage.LoginUser.appUnlockPasswrod, action); 
 | 
                MainPage.BasePageView.AddChidren(page); 
 | 
                page.LoadPage("7"); 
 | 
                //MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; 
 | 
                return; 
 | 
            } 
 | 
#if __ANDROID__ 
 | 
            new System.Threading.Thread(() => 
 | 
            { 
 | 
                int i = 0; 
 | 
                while (i > 1) 
 | 
                { 
 | 
                    MainPage.Log($"倒计时:{i} sec"); 
 | 
                    System.Threading.Thread.Sleep(1000); 
 | 
                } 
 | 
                Application.RunOnMainThread(() => 
 | 
                { 
 | 
                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; 
 | 
                }); 
 | 
            }) 
 | 
            { IsBackground = true }.Start(); 
 | 
#else 
 | 
            MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; 
 | 
#endif 
 | 
  
 | 
        } 
 | 
  
 | 
        public void LoadPage() 
 | 
        { 
 | 
            LoadOption(); 
 | 
        } 
 | 
  
 | 
        /// <summary> 
 | 
        /// 加载指纹验证界面 
 | 
        /// </summary> 
 | 
        public void LoadGesturePage(string optionType, Action fingerAction) 
 | 
        { 
 | 
            //Dialog dialog = new Dialog(); 
 | 
  
 | 
            if (optionType == "7") 
 | 
            { 
 | 
                if (unlockTime.AddSeconds(60) > DateTime.Now || MainPage.LoginUser.appUnlockPasswrod == "" || MainPage.LoginUser.appUnlockPage.Count == 0) 
 | 
                { 
 | 
                    return; 
 | 
                } 
 | 
            } 
 | 
            var bodyView = new FrameLayout() 
 | 
            { 
 | 
                BackgroundColor = CSS.CSS_Color.MainBackgroundColor 
 | 
            }; 
 | 
            MainPage.BasePageView.AddChidren(bodyView); 
 | 
            MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; 
 | 
  
 | 
            bodyView.AddChidren(new Button() 
 | 
            { 
 | 
                Height = Application.GetRealHeight(64), 
 | 
                BackgroundColor = CSS.CSS_Color.BackgroundColor, 
 | 
            }); 
 | 
  
 | 
            bodyView.AddChidren(new Button() 
 | 
            { 
 | 
                Y = Application.GetRealHeight(196), 
 | 
                Height = Application.GetRealHeight(42), 
 | 
                TextAlignment = TextAlignment.Center, 
 | 
                TextColor = CSS.CSS_Color.FirstLevelTitleColor, 
 | 
                TextSize = CSS.CSS_FontSize.SubheadingFontSize, 
 | 
                TextID = StringId.PleaseVerifyTheFingerprint, 
 | 
            }); 
 | 
  
 | 
            var btnFingerIcon = new Button() 
 | 
            { 
 | 
                Y = Application.GetRealHeight(260), 
 | 
                Gravity = Gravity.CenterHorizontal, 
 | 
                Width = Application.GetRealWidth(102), 
 | 
                Height = Application.GetRealWidth(102), 
 | 
                UnSelectedImagePath = "PersonalCenter/AppUnlockSetting/FingerIconRed.png", 
 | 
            }; 
 | 
            bodyView.AddChidren(btnFingerIcon); 
 | 
  
 | 
            btnFingerIcon.MouseUpEventHandler = (sender, e) => 
 | 
            { 
 | 
                fingerAction(); 
 | 
            }; 
 | 
  
 | 
            var btnOtherVerify = new Button() 
 | 
            { 
 | 
                Y = Application.GetRealHeight(527), 
 | 
                Height = Application.GetRealHeight(40), 
 | 
                TextAlignment = TextAlignment.Center, 
 | 
                TextColor = CSS.CSS_Color.MainColor, 
 | 
                TextSize = CSS.CSS_FontSize.TextFontSize, 
 | 
                TextID = MainPage.LoginUser.appUnlockType.Contains("1") ? StringId.VerifyDigitalPassword : StringId.VerifyGesturePassword 
 | 
            }; 
 | 
            bodyView.AddChidren(btnOtherVerify); 
 | 
  
 | 
            btnOtherVerify.MouseUpEventHandler = (sender, e) => 
 | 
            { 
 | 
               
 | 
                Action action = () => 
 | 
                { 
 | 
                    unlockTime = DateTime.Now; 
 | 
                }; 
 | 
                if (MainPage.LoginUser.appUnlockType.Contains("1")) 
 | 
                { 
 | 
                    var page = new AppUnlockPasswordPage(MainPage.LoginUser.appUnlockPasswrod, action); 
 | 
                    MainPage.BasePageView.AddChidren(page); 
 | 
                    page.LoadPage(optionType); 
 | 
                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; 
 | 
                } 
 | 
                else if (MainPage.LoginUser.appUnlockType.Contains("2")) 
 | 
                { 
 | 
                    var page = new AppUnlockGesturePage(MainPage.LoginUser.appUnlockPasswrod, action); 
 | 
                    MainPage.BasePageView.AddChidren(page); 
 | 
                    page.LoadPage(optionType); 
 | 
                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; 
 | 
                } 
 | 
                ///将验证指纹的页面移除 
 | 
                //MainPage.BasePageView.RemoveAt(MainPage.BasePageView.ChildrenCount - 1); 
 | 
                MainPage.BasePageView.GetChildren(MainPage.BasePageView.ChildrenCount - 1).RemoveFromParent(); 
 | 
            }; 
 | 
  
 | 
            //dialog.Show(); 
 | 
            Console.WriteLine("-0987654321"); 
 | 
        } 
 | 
    } 
 | 
} 
 |