wxr
2024-04-16 1b6d5116f9f3e291da636b9ec510d65a4fedf639
登录布防修改,logo修改
1个文件已添加
11个文件已修改
834 ■■■■ 已修改文件
HDL-ON_iOS/Resources/Phone/Public/.DS_Store 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_iOS/Resources/Phone/Public/Logo.png 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/DAL/Server/HttpUtil.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI1-Login/ForgetPasswordPage.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs 54 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI1-Login/LoginPage.cs 589 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI1-Login/LoginPageBLL.cs 144 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI1-Login/RegisterPage.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI1-Login/RegisterPageBLL.cs 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI1-Login/SelectServerDialog.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
SiriIntents/Server/HttpUtil.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SiriKit/Data/NSUserDefaultsHelper.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_iOS/Resources/Phone/Public/.DS_Store
Binary files differ
HDL-ON_iOS/Resources/Phone/Public/Logo.png

HDL_ON/DAL/Server/HttpUtil.cs
@@ -19,8 +19,8 @@
        /// 公共域名就近解析
        /// </summary>
        public const string GlobalRequestHttpsHost = "https://nearest.hdlcontrol.com";
        const string APP_KEY = "HDL-HOME-APP";
        const string SECRET_KEY = "CPL345bn28gHnvi9G4tYbq3cTYkiHC";
        const string APP_KEY = "QWERREWQ";
        const string SECRET_KEY = "CPBUCTRLCPBUABCD";
        //public const string GlobalRequestHttpsHost = "https://test-gz.hdlcontrol.com";
HDL_ON/UI/UI1-Login/ForgetPasswordPage.cs
@@ -350,7 +350,7 @@
                TextSize = CSS_FontSize.TextFontSize,
                PlaceholderTextColor = CSS_Color.PromptingColor1,
                PlaceholderText = Language.StringByID(StringId.PlsEntryVerificationCode),
                IsNumberKeyboardType = true,
                IsNumberKeyboardType = true
            };
            verificationCodeView.AddChidren(etVerificationCode);
HDL_ON/UI/UI1-Login/ForgetPasswordPageBLL.cs
@@ -134,16 +134,16 @@
                    }
                }
                LoadMothed_EnableResetButton();
            };
            etVerificationCode.TextChangeEventHandler = (sender, e) =>
            {
            //etVerificationCode.TextChangeEventHandler = (sender, e) => {
                if (etVerificationCode.Text.Length > 1)
                {
                    LoadMothed_EnableResetButton();
                }
            };
            //    if (etVerificationCode.Text.Length > 1)
            //    {
            //        LoadMothed_EnableResetButton();
            //    }
            //};
            Action<View, string> textChangeEventHandler = (view, textStr) =>
            {
@@ -183,7 +183,7 @@
                            HDLCommon.Current.BottomLineShowType(btnAccountViewBottomLine, BottomLineType.Error);
                            new Tip()
                            {
                                MaxWidth = Application.GetRealWidth(300),
                            MaxWidth = Application.GetRealWidth(300),
                                CloseTime = 1,
                                Text = Language.StringByID(StringId.PlsEntryCorrectMobilNeumber),
                                Direction = AMPopTipDirection.None,
@@ -207,7 +207,7 @@
                            HDLCommon.Current.BottomLineShowType(btnAccountViewBottomLine, BottomLineType.Error);
                            new Tip()
                            {
                                MaxWidth = Application.GetRealWidth(300),
                            MaxWidth = Application.GetRealWidth(300),
                                CloseTime = 1,
                                Text = Language.StringByID(StringId.PlsEntryCorrectEmailAddress),
                                Direction = AMPopTipDirection.None,
@@ -245,8 +245,8 @@
                        HDLCommon.Current.BottomLineShowType(btnPasswordViewBottomLine, BottomLineType.Error);
                        new Tip()
                        {
                            MaxWidth = Application.GetRealWidth(300),
                            CloseTime = 1,
                            MaxWidth = Application.GetRealWidth(300),
                            Direction = AMPopTipDirection.None,
                            Text = Language.StringByID(StringId.PasswordIsUnqualified)
                        }.Show(bodyView);
@@ -286,23 +286,23 @@
            };
            //验证码文本框焦点变化事件
            //etVerificationCode.FoucsChanged += (sender, e) =>
            //{
            //    if (etVerificationCode.Foucs)
            //    {
            //        HDLCommon.Current.BottomLineShowType(btnVerificationCodeViewBottomLine, BottomLineType.GotFocus);
            //    }
            //    else
            //    {
            //        if (isHitBack) return;//点击返回关闭页面不检测提示
            etVerificationCode.FoucsChanged += (sender, e) =>
            {
                if (etVerificationCode.Foucs)
                {
                    HDLCommon.Current.BottomLineShowType(btnVerificationCodeViewBottomLine, BottomLineType.GotFocus);
                }
                else
                {
                    if (isHitBack) return;//点击返回关闭页面不检测提示
            //        HDLCommon.Current.BottomLineShowType(btnVerificationCodeViewBottomLine, BottomLineType.Normal);
            //        if (etVerificationCode.Text.Length > 4)
            //        {
            //            LoadMothed_EnableResetButton();
            //        }
            //    }
            //};
                    HDLCommon.Current.BottomLineShowType(btnVerificationCodeViewBottomLine, BottomLineType.Normal);
                    if (etVerificationCode.Text.Length > 4)
                    {
                        LoadMothed_EnableResetButton();
                    }
                }
            };
        }
@@ -401,7 +401,7 @@
                                    {
                                        //短信发送间隔60s
                                        (sender as Button).IsSelected = false;
                                        //etVerificationCode.Foucs = true;
                                        etVerificationCode.Foucs = true;
                                    });
                                    //2.1获取验证码倒计时
                                    new Thread(() =>
HDL_ON/UI/UI1-Login/LoginPage.cs
@@ -22,76 +22,6 @@
                Application.HideSoftInput();
            };
            pm = new HttpServerRequest();
#if __ANDROID__
            BaseActivity.HideKeyboardEvent = () => {
                if (this.Y != 0)
                {
                    Application.RunOnMainThread(() =>
                    {
                        try
                        {
                            this.Y = 0;
                        }
                        catch { }
                    });
                }
            };
            BaseActivity.ShowKeyboardEvent = () => {
                try
                {
                    if (etPassword.Foucs)
                    {
                        new Thread(() =>
                        {
                            Thread.Sleep(100);
                            if (this.Y < 0)
                            {
                                return;
                            }
                            for (var i = 0; i < 10; i++)
                            {
                                Application.RunOnMainThread(() =>
                                {
                                    try
                                    {
                                        this.Y = 0 - Application.GetRealHeight(10 * i);
                                    }
                                    catch { }
                                });
                                Thread.Sleep(10);
                            }
                        })
                        { IsBackground = true }.Start();
                    }
                }
                catch { }
            };
            BaseActivity.SmsAction = (message) => {
                Console.WriteLine($"接收到短信:"+ message);
                string pattern = @"【HDL】.*(\d{6}).*";
                Regex regex = new Regex(pattern);
                Match match = regex.Match(message);
                if (match.Success)
                {
                    string code = match.Groups[1].Value;
                    Console.WriteLine("验证码为:" + code);
                    if(loginType==0 && logintMode == 1)
                    {
                        etPassword.Text = code;
                    }
                    smsCode = code;
                }
                else
                {
                    Console.WriteLine("未找到验证码!");
                }
            };
#endif
        }
        public override void RemoveFromParent()
@@ -103,20 +33,13 @@
                waitPage = null;
            }
#if __ANDROID__
            BaseActivity.HideKeyboardEvent = () => {
            };
            BaseActivity.ShowKeyboardEvent = () => { };
            BaseActivity.SmsAction = (sms) => { };
#endif
            base.RemoveFromParent();
            //2020-12-22 增加点击隐藏键盘事件
            ////2020-12-22 增加点击隐藏键盘事件
            //Application.HideSoftInput();
        }
#region 局部变量
        #region 局部变量
        /// <summary>
        /// 登录类型
        /// 0:手机
@@ -131,13 +54,9 @@
        int logintMode = 0;
        string account = "";
        string password = "";
        /// <summary>
        /// 短信验证码
        /// </summary>
        string smsCode = "";
#endregion
        #endregion
#region 控件列表
        #region 控件列表
        /// <summary>
        /// 等待提示
        /// </summary>
@@ -230,7 +149,7 @@
        /// 服务器请求对象
        /// </summary>
        HttpServerRequest pm;
#endregion
        #endregion
        string verAccount = "";
@@ -252,8 +171,6 @@
#if __Android__
            OnAppConfig.Instance.isAgreePrivacyPolicy = true;
#endif
            this.BackgroundColor = CSS_Color.MainBackgroundColor;
            var btnIcon = new Button()
            {
                X = Application.GetRealWidth(28),
@@ -270,12 +187,9 @@
                Y = Application.GetRealHeight(69),
                Width = Application.GetMinRealAverage(254),
                Height = Application.GetMinRealAverage(156),
                UnSelectedImagePath = "Public/Logo-bg.png"
                UnSelectedImagePath = "Public/Logo-bg000.png"
            };
            bodyView.AddChidren(btnIcon_bg);
            btnIcon_bg.MouseDownEventHandler += (sender, e) => {
                Application.HideSoftInput();
            };
#if DEBUG
            btnIcon_bg.MouseUpEventHandler += (sender, e) =>
@@ -294,10 +208,9 @@
                //return;
                if (b)
                {
                    etAccount.Text = "13580507523";
                    etAccount.Text = "wxr@hdlchina.com.cn";
                    etAccount.Text = "13682244600";
                }
                else
                {
@@ -306,9 +219,12 @@
                }
                b = !b;
                etPassword.Text = "123456";
                if(etAccount.Text == "13580507523")
                if(etAccount.Text == "wxr@hdlchina.com.cn")
                {
                    etPassword.Text = "a123456";
                    etPassword.Text = "CQDWYEOV";
                }else if(etAccount.Text == "13682244600")
                {
                    etPassword.Text = "asd123456789asd";
                }
                btnLogin.IsSelected = true;
            };
@@ -336,7 +252,7 @@
                Height = Application.GetRealHeight(40),
                TextID = StringId.LoginByEmail,
                TextColor = CSS_Color.PromptingColor1,
                TextAlignment = TextAlignment.CenterLeft,
                TextAlignment = TextAlignment.Center,
                TextSize = CSS_FontSize.TextFontSize,
            };
            bodyView.AddChidren(btnEmailLogin);
@@ -401,9 +317,6 @@
                PlaceholderText = Language.StringByID(StringId.PlsEntryPhoneNumber),
                TextAlignment = TextAlignment.CenterLeft,
            };
#if __IOS__
            etAccount.MyTextContentType = UIKit.UITextContentType.Name;
#endif
            accountView.AddChidren(etAccount);
            if (userInfo != null && userInfo.ID != "1234567890")
@@ -599,6 +512,11 @@
            if (Language.CurrentLanguage != "Chinese")
            {
                if (Language.CurrentLanguage == "russian")
                {
                    btnDomeLogin.Text = "Гостевой режим";
                }
                else
                {
                    btnDomeLogin.Text = "Tourist experience";
                }
@@ -698,8 +616,8 @@
#region 功能
                var lightRgb1 = new Function()
                {
                    sid = "light10000000000",
                    deviceId = "light10000000000",
                    sid = "light1",
                    deviceId = "light1",
                    name = Language.CurrentLanguage == "Chinese"?  "客厅氛围灯1": "RGB light 1",
                    spk = SPK.LightRGB,
                    roomIds = new List<string>() { "1405771024583090178"},
@@ -709,12 +627,8 @@
                        new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on"   },
                        new FunctionAttributes() { key = "brightness",value =new List<string>(){ "0","100" }, curValue="100",state = "100"   },
                        new FunctionAttributes() { key = "rgb",value =new List<string>(){ "0","100" }, curValue="0,0,0",state = "0,0,0"   },
                        new FunctionAttributes() { key = "fade_time",value =new List<string>(){ "0","100" }, curValue="0",state = "0"   },
                        //new FunctionAttributes() { key = "fade_time",value =new List<string>(){ "0","100" }, curValue="0",state = "0"   },
                        new FunctionAttributes() { key = "delay",value =new List<string>(){ "0","100" }, curValue="0",state = "0"   },
                        new FunctionAttributes() { key = "colorful",value =new List<string>(){ "on","off" }, curValue="on",state = "on"   },
                        new FunctionAttributes() { key = FunctionAttributeKey.ColorfulBegin,value =new List<string>(){ "0","100" }, curValue="0,0,0",state = "0,0,0"   },
                        new FunctionAttributes() { key = FunctionAttributeKey.ColorfulEnd,value =new List<string>(){ "0","100" }, curValue="0,0,0",state = "0,0,0"   },
                        new FunctionAttributes() { key = FunctionAttributeKey.ColorfulTime,value =new List<string>(){ "0","100" }, curValue="0",state = "0"   },
                    },
                };
                lightRgb1.SaveFunctionFile();
@@ -841,7 +755,6 @@
                        new FunctionAttributes() { key = "mode",value =new List<string>(){ "day", "night", "away", "normal", "timer" }, curValue="day",state = "day"   },
                        new FunctionAttributes() { key = "set_temp",value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 35,min = 5  },
                        new FunctionAttributes() { key = "room_temp",value =new List<string>(){ "" }, curValue="26",state = "26"   },
                        new FunctionAttributes() { key = "temperature_type", value = new List<string>() { "°F", "°C" }, curValue = "°C", state = "°C" },
                    },
                };
                fh.SaveFunctionFile();
@@ -849,119 +762,6 @@
#if DEBUG
                var hesTv = new Function()
                {
                    sid = "hisense000000000001",
                    deviceId = "hisense000000000001",
                    name = "海信电视",
                    spk = SPK.ElectricalTvHisense,
                    roomIds = new List<string>() { "1405771024583090178" },
                    attributes = new List<FunctionAttributes>()
                    {
                        new FunctionAttributes() { key = "on_off",value =new List<string>(){ "off" }, curValue="on",state = "on"   },
                        new FunctionAttributes() { key = "wol",value =new List<string>(){ "on" }, curValue="on",state = "on"   },
                    }
                };
                hesTv.SaveFunctionFile();
                var airSwitchP3 = new Function()
                {
                    sid = "airSwitchP3000000000001",
                    deviceId = "airSwitchP3000000000001",
                    name = "测试-三相智能空开",
                    spk = SPK.AirSwitchP3,
                    roomIds = new List<string>() { "1405771024583090178" },
                    attributes = new List<FunctionAttributes>()
                    {
                        new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on"   },
                        new FunctionAttributes() { key = "delay",value =new List<string>(){ "0","100" }, curValue="0",state = "0"   },
                        new FunctionAttributes() { key = FunctionAttributeKey.PowerA,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.PowerB,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.PowerC,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.VoltageA,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.VoltageB,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.VoltageC,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.CurrentA,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.CurrentB,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.CurrentC,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.TempA,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.TempB,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.TempC,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.MaxCurrent,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.MaxTemp,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.ElectricityA,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.ElectricityB,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.ElectricityC,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                        new FunctionAttributes() { key = FunctionAttributeKey.TotalElectricity,value =new List<string>(){ "" }, curValue="26",state = "26" ,max = 1000,min = 0  },
                    },
                    //collect = true,
                };
                airSwitchP3.SaveFunctionFile();
                if (FunctionList.List.groupControls.Count == 0)
                {
                    FunctionList.List.groupControls.Add(new GroupControl()
                    {
                        name = "群控测试",
                        collect = true,
                        sid = "234567876545678765",
                        uids = new List<string>()
                        {
                            "1405771024583090178",
                            "9191a3a2-026f-4667-a0b1-e3af699e7295",
                        },
                        roomIds = new List<string>()
                        {
                            "1405771024583090178",
                            "9191a3a2-026f-4667-a0b1-e3af699e7295",
                        },
                        sids = new List<GroupControlFunction>()
                        {
                            new GroupControlFunction(){
                                sid = lightRgb1.sid,
                                spk = SPK.LightRGB,
                            },
                            new GroupControlFunction(){
                                sid = "light2",
                                spk = SPK.LightRGB,
                            },
                        }
                    });
                }
                var series1 = new Function()
                {
                    sid = "light10000000000series1",
                    deviceId = "light10000000000series1",
                    name = Language.CurrentLanguage == "Chinese" ? "序列1" : "Series1",
                    spk = SPK.CommonSeries,
                    roomIds = new List<string>() { "1405771024583090178" },
                    attributes = new List<FunctionAttributes>()
                    {
                        new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on"   },
                    },
                };
                series1.SaveFunctionFile();
                var series2 = new Function()
                {
                    sid = "light10000000000series2",
                    deviceId = "light10000000000series2",
                    name = Language.CurrentLanguage == "Chinese" ? "序列2" : "Series2",
                    spk = SPK.CommonSeries,
                    roomIds = new List<string>() { "1405771024583090178" },
                    attributes = new List<FunctionAttributes>()
                    {
                        new FunctionAttributes() { key = "on_off",value =new List<string>(){ "on","off" }, curValue="on",state = "on"   },
                    },
                };
                series2.SaveFunctionFile();
                var mechanicalArm = new Function()
                {
                    sid = "mechanicalArm1",
@@ -996,161 +796,35 @@
                };
                FunctionList.List.Functions.Add(lightRgbw1);
                FunctionList.List.Functions.Add(new Function
                {
                    name = "测试-空调科技系统总控",
                    spk = SPK.AcstParent,
                    //collect = true,
                    attributes = new List<FunctionAttributes>()
                {
                    new FunctionAttributes(){ key = FunctionAttributeKey.OnOff ,curValue = "on",state = "on" },
                    new FunctionAttributes(){ key = AcstParent_AttrEnum.mode.ToString(),curValue = AcstParent_Attr_ModeValueEnum.cool.ToString(),state = AcstParent_Attr_ModeValueEnum.cool.ToString(),
                         value = new List<string>
                         {
                             AcstParent_Attr_ModeValueEnum.cool.ToString(),
                             AcstParent_Attr_ModeValueEnum.dry.ToString(),
                             AcstParent_Attr_ModeValueEnum.fan.ToString(),
                             AcstParent_Attr_ModeValueEnum.heat.ToString(),
                             AcstParent_Attr_ModeValueEnum.humidity.ToString(),
                             AcstParent_Attr_ModeValueEnum.heat_humidity.ToString(),
                         }
                    },
                    new FunctionAttributes(){ key = AcstParent_AttrEnum.scene.ToString(), curValue = AcstParent_Attr_SceneValueEnum.at_home.ToString(), state = AcstParent_Attr_SceneValueEnum.at_home.ToString(),
                        value = new List<string>()
                        {
                            AcstParent_Attr_SceneValueEnum.at_home.ToString(),
                            AcstParent_Attr_SceneValueEnum.leave_home.ToString(),
                            AcstParent_Attr_SceneValueEnum.sleep.ToString(),
                        }
                    },
                    new FunctionAttributes(){ key = AcstParent_AttrEnum.day_electricity.ToString(),curValue = "99",state = "99"},
                    new FunctionAttributes(){ key = AcstParent_AttrEnum.month_electricity.ToString(),curValue = "999",state = "999"},
                    new FunctionAttributes(){ key = AcstParent_AttrEnum.total_electricity.ToString(),curValue = "9999",state = "9999"},
                    new FunctionAttributes(){ key = AcstParent_AttrEnum.active_power.ToString(),curValue = "9999",state = "9999"},
                    //new FunctionAttributes(){ key = AcstParent_AttrEnum.room_temp.ToString(),curValue = "26",state = "26"},
                    //new FunctionAttributes(){ key = AcstParent_AttrEnum.room_humidity.ToString(),curValue = "66",state = "66"},
                    //new FunctionAttributes(){ key = AcstParent_AttrEnum.co2.ToString(),curValue = "266",state = "266"},
                    //new FunctionAttributes(){ key = AcstParent_AttrEnum.tvoc.ToString(),curValue = "666",state = "666"},
                    //new FunctionAttributes(){ key = AcstParent_AttrEnum.pm25.ToString(),curValue = "36",state = "36"},
                }
                });
                FunctionList.List.Functions.Add(new Function
                {
                    name = "测试-空调科技系统子控-1",
                    spk = SPK.AcstSub,
                    sid = "0000001",
                    attributes = new List<FunctionAttributes>()
                {
                    new FunctionAttributes(){ key = FunctionAttributeKey.OnOff ,curValue = "on",state = "on" },
                    new FunctionAttributes(){ key = AcstSub_AttrEnum.set_temp.ToString(),curValue = "26",state = "26"},
                    new FunctionAttributes(){ key = AcstSub_AttrEnum.room_temp.ToString(),curValue = "26",state = "26"},
                    new FunctionAttributes(){ key = AcstSub_AttrEnum.room_humidity.ToString(),curValue = "66",state = "66"},
                }
                });
                FunctionList.List.Functions.Add(new Function
                {
                    name = "测试-空调科技系统子控-2",
                    spk = SPK.AcstSub,
                    sid = "0000002",
                    attributes = new List<FunctionAttributes>()
                {
                    new FunctionAttributes(){ key = FunctionAttributeKey.OnOff ,curValue = "on",state = "on" },
                    new FunctionAttributes(){ key = AcstSub_AttrEnum.set_temp.ToString(),curValue = "26",state = "26"},
                    new FunctionAttributes(){ key = AcstSub_AttrEnum.room_temp.ToString(),curValue = "26",state = "26"},
                    new FunctionAttributes(){ key = AcstSub_AttrEnum.room_humidity.ToString(),curValue = "66",state = "66"},
                }
                });
                FunctionList.List.Functions.Add(new Function
                {
                    name = "测试-空调科技系统子控-3",
                    spk = SPK.AcstSub,
                    sid = "0000003",
                    attributes = new List<FunctionAttributes>()
                {
                    new FunctionAttributes(){ key = FunctionAttributeKey.OnOff ,curValue = "on",state = "on" },
                    new FunctionAttributes(){ key = AcstSub_AttrEnum.set_temp.ToString(),curValue = "26",state = "26"},
                    new FunctionAttributes(){ key = AcstSub_AttrEnum.room_temp.ToString(),curValue = "26",state = "26"},
                    new FunctionAttributes(){ key = AcstSub_AttrEnum.room_humidity.ToString(),curValue = "66",state = "66"},
                }
                });
                FunctionList.List.Functions.Add(new Function
                {
                    name = "测试-空调科技系统子控-4",
                    spk = SPK.AcstSub,
                    sid = "0000004",
                    attributes = new List<FunctionAttributes>()
                {
                    new FunctionAttributes(){ key = FunctionAttributeKey.OnOff ,curValue = "on",state = "on" },
                    new FunctionAttributes(){ key = AcstSub_AttrEnum.set_temp.ToString(),curValue = "26",state = "26"},
                    new FunctionAttributes(){ key = AcstSub_AttrEnum.room_temp.ToString(),curValue = "26",state = "26"},
                    new FunctionAttributes(){ key = AcstSub_AttrEnum.room_humidity.ToString(),curValue = "66",state = "66"},
                }
                });
                FunctionList.List.Functions.Add(new Function
                {
                    name = "测试-空调科技系统子控-5",
                    spk = SPK.AcstSub,
                    sid = "0000005",
                    attributes = new List<FunctionAttributes>()
                {
                    new FunctionAttributes(){ key = FunctionAttributeKey.OnOff ,curValue = "on",state = "on" },
                    new FunctionAttributes(){ key = AcstSub_AttrEnum.set_temp.ToString(),curValue = "26",state = "26"},
                    new FunctionAttributes(){ key = AcstSub_AttrEnum.room_temp.ToString(),curValue = "26",state = "26"},
                    new FunctionAttributes(){ key = AcstSub_AttrEnum.room_humidity.ToString(),curValue = "66",state = "66"},
                }
                });
                //FunctionList.List.Functions.Add(new Function
                //{
                //    name = "测试梦幻窗帘",
                //    spk = SPK.CurtainDream,
                //    sid = "1234577",
                //    attributes = new List<FunctionAttributes> {
                //        new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" },
                //        new FunctionAttributes(){ key = "percent",curValue= "100",state = "100" },
                //        new FunctionAttributes(){ key = "angle",curValue= "0",state = "0" },
                //    }
                //});
                FunctionList.List.Functions.Add(new Function
                {
                    name = "测试梦幻窗帘",
                    spk = SPK.CurtainDream,
                    sid = "1234577",
                    attributes = new List<FunctionAttributes> {
                        new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" },
                        new FunctionAttributes(){ key = "percent",curValue= "100",state = "100" },
                        new FunctionAttributes(){ key = "angle",curValue= "0",state = "0" },
                    }
                });
                FunctionList.List.Functions.Add(new Function
                {
                    name = "测试毫米波传感器",
                    spk = SPK.SenesorMegahealth,
                    attributes = new List<FunctionAttributes>
                    {
                        new FunctionAttributes(){ key = "enable",curValue = "true",state = "true" },
                        new FunctionAttributes(){ key = "people_num",curValue = "0",state = "0" },
                        new FunctionAttributes(){ key = "people_id",curValue = "1",state = "1" },
                        new FunctionAttributes(){ key = "target_status",curValue = "1",state = "1" },//0空,1走,2跑,3坐,4跌倒,5站
                        new FunctionAttributes(){ key = "people_status",curValue = "false",state = "false" },//状态  有人无人
                        //new FunctionAttributes(){ key = "",curValue = "",state = "" },
                        //new FunctionAttributes(){ key = "",curValue = "",state = "" },
                        //new FunctionAttributes(){ key = "",curValue = "",state = "" },
                    }
                });
                FunctionList.List.Functions.Add(new Function
                {
                    name = "测试温控器",
                    spk = SPK.HvacCac,
                    attributes = new List<FunctionAttributes>
                {
                    new FunctionAttributes(){ key = "on_off",curValue = "on",state = "on" },
                    new FunctionAttributes(){ key = "cac_valve",curValue = "on",state = "on" },//毛细阀
                    new FunctionAttributes(){ key = "fh_valve",curValue = "on",state = "on" },//地暖阀
                    new FunctionAttributes(){ key = "mode",curValue = "cool",state = "cool", value = new List<string>{ "cool","heat"} },
                    new FunctionAttributes(){ key = "set_temp",curValue = "20",state = "20",min = 16,max = 30 },
                    new FunctionAttributes(){ key = "room_temp",curValue = "20",state = "20" },
                    new FunctionAttributes(){ key = "dew_point_temp",curValue = "20",state = "20" },//露点温度
                    new FunctionAttributes(){ key = "surface_temp",curValue = "20",state = "20" },//表面温度
                    new FunctionAttributes(){ key = "energy_saving",curValue = "true",state = "true" },//节能
                    new FunctionAttributes(){ key = "room_humidity",curValue = "66",state = "66" },
                    //new FunctionAttributes(){ key = "",curValue = "",state = "" },
                }
                });
                //FunctionList.List.Functions.Add(new Function
                //{
                //    name = "测试毫米波传感器",
                //    spk = SPK.SenesorMegahealth,
                //    attributes = new List<FunctionAttributes>
                //    {
                //        new FunctionAttributes(){ key = "enable",curValue = "true",state = "true" },
                //        new FunctionAttributes(){ key = "people_num",curValue = "0",state = "0" },
                //        new FunctionAttributes(){ key = "people_id",curValue = "1",state = "1" },
                //        new FunctionAttributes(){ key = "target_status",curValue = "0",state = "0" },//0空,1走,2跑,3坐,4跌倒,5站
                //        new FunctionAttributes(){ key = "people_status",curValue = "false",state = "false" },//状态  有人无人
                //        //new FunctionAttributes(){ key = "",curValue = "",state = "" },
                //        //new FunctionAttributes(){ key = "",curValue = "",state = "" },
                //        //new FunctionAttributes(){ key = "",curValue = "",state = "" },
                //    }
                //});
                //FunctionList.List.Functions.Add(new Function
                //{
@@ -1202,69 +876,15 @@
                //    }
                //});
                FunctionList.List.Functions.Add(new Function()
                {
                    spk = SPK.SensorDryContact,
                    name = "干接点",
                    //collect = true,
                    sid = "sss000001",
                    attributes = new List<FunctionAttributes>()
                    {
                        new FunctionAttributes(){ key = "contact_status",curValue= "open",state = "open" },
                    },
                });
                FunctionList.List.Functions.Add(new Function()
                {
                    spk = SPK.SensorLight,
                    name = "光照传感器",
                    //collect = true,
                    sid = "SensorLightsss000001",
                    attributes = new List<FunctionAttributes>()
                    {
                        new FunctionAttributes(){ key = "illuminance",curValue= "100",state = "100" },
                    },
                });
                FunctionList.List.Functions.Add(new Function()
                {
                    spk = SPK.OtherCommon,
                    name = "通用开关",
                    //collect = true,
                    sid = "sssCommon000001",
                    attributes = new List<FunctionAttributes>()
                    {
                        new FunctionAttributes(){ key = "on_off",curValue= "on",state = "off" },
                    },
                });
                FunctionList.List.Functions.Add(new Function()
                {
                    spk = SPK.SensorPir,
                    name = "人体存在传感器1",
                    collect = true,
                    sid = "sss000001111",
                    attributes = new List<FunctionAttributes>()
                    {
                        new FunctionAttributes(){ key = "people_status",curValue= "false",state = "false" },
                    },
                });
                FunctionList.List.Functions.Add(new Function()
                {
                    spk = SPK.SensorPirHold,
                    name = "人体存在传感器2",
                    collect = true,
                    sid = "sss0000011112",
                    attributes = new List<FunctionAttributes>()
                    {
                        new FunctionAttributes(){ key = "people_status",curValue= "true",state = "true" },
                    },
                });
                //FunctionList.List.Functions.Add(new Function()
                //{
                //    spk = SPK.SensorDryContact,
                //    name = "干接点",
                //    attributes = new List<FunctionAttributes>()
                //    {
                //        new FunctionAttributes(){ key = "status",curValue= "on",state = "on" },
                //    },
                //});
                //FunctionList.List.Functions.Add(new Function()
                //{
@@ -1279,7 +899,7 @@
                //        new AttrKeyConfig (){
                //            key = "pm2.5",
                //            type = "interval" ,
                //            unit = "ug/m³",
                //            unit = "ug/m²",
                //            configs = new List<AttrKeyInfo>(){
                //               new AttrKeyInfo(){ start = "0",end = "75",color = "0xFFADE764", desc = "良好"},
                //               new AttrKeyInfo(){ start = "76",end = "150",color = "0xFFFFD154",desc = "轻/中度污染"},
@@ -1289,19 +909,19 @@
                //    },
                //});
                FunctionList.List.Functions.Add(new Function()
                {
                    spk = SPK.SensorHelp,
                    name = "测试紧急求助按钮",
                    attributes = new List<FunctionAttributes>()
                    {
                        new FunctionAttributes(){ key = "status",curValue= "on",state = "on" },
                        new FunctionAttributes(){ key = "alarm_status",curValue= "alarm",state = "alarm" },
                        new FunctionAttributes(){ key = "battery_value",curValue= "200",state = "200" },
                        new FunctionAttributes(){ key = "battery_percentage",curValue= "10",state = "10" },
                        new FunctionAttributes(){ key = "battery_state",curValue= "low",state = "low" },
                    },
                });
                //FunctionList.List.Functions.Add(new Function()
                //{
                //    spk = SPK.SensorHelp,
                //    name = "测试紧急求助按钮",
                //    attributes = new List<FunctionAttributes>()
                //    {
                //        new FunctionAttributes(){ key = "status",curValue= "on",state = "on" },
                //        new FunctionAttributes(){ key = "alarm_status",curValue= "alarm",state = "alarm" },
                //        new FunctionAttributes(){ key = "battery_value",curValue= "200",state = "200" },
                //        new FunctionAttributes(){ key = "battery_percentage",curValue= "10",state = "10" },
                //        new FunctionAttributes(){ key = "battery_state",curValue= "low",state = "low" },
                //    },
                //});
                //FunctionList.List.Functions.Add(new Function()
                //{
@@ -1343,16 +963,16 @@
                //    },
                //});
                FunctionList.List.Functions.Add(new Function()
                {
                    spk = SPK.SensorGas,
                    name = "燃气传感器",
                    attributes = new List<FunctionAttributes>()
                    {
                        new FunctionAttributes(){ key = "enable",curValue= "true",state = "true" ,value = new List<string>(){ "true", "false" } },
                        new FunctionAttributes(){ key = "status",curValue= "normal",state = "normal" ,value = new List<string>(){ "alarm", "normal" } },
                    },
                });
                //FunctionList.List.Functions.Add(new Function()
                //{
                //    spk = SPK.SensorGas,
                //    name = "燃气传感器",
                //    attributes = new List<FunctionAttributes>()
                //    {
                //        new FunctionAttributes(){ key = "enable",curValue= "true",state = "true" ,value = new List<string>(){ "true", "false" } },
                //        new FunctionAttributes(){ key = "status",curValue= "normal",state = "normal" ,value = new List<string>(){ "alarm", "normal" } },
                //    },
                //});
                //FunctionList.List.Functions.Add(new Function() { spk = SPK.PjtIr, name = "测试投影仪",
                //                            attributes = new List<FunctionAttributes>() {
@@ -1438,7 +1058,6 @@
                #endregion
                #region 场景
                var scene1 = new Scene()
                {
@@ -1711,8 +1330,7 @@
                        new FunctionAttributes() { key = "on_off", value = new List<string>() { "on", "off" }, curValue = "on", state = "on" },
                        new FunctionAttributes() { key = "mode", value = new List<string>() { "cool", "heat", "fan", "auto", "dry" }, curValue = "cool", state = "cool" },
                        new FunctionAttributes() { key = "fan", value = new List<string>() { "high", "medium", "low", "auto" }, curValue = "auto", state = "auto" },
                        new FunctionAttributes() { key = "set_temp",unit = "F", step = "1", value = new List<string>() { "16", "30"}, curValue = "16", state = "16",max = 30,min = 16 },
                        new FunctionAttributes() { key = FunctionAttributeKey.TempType,unit = "F", step = "1", value = new List<string>() { "16", "30"}, curValue = "16", state = "16",max = 30,min = 16 },
                        new FunctionAttributes() { key = "set_temp",step = "1", value = new List<string>() { "16", "30"}, curValue = "16", state = "16",max = 30,min = 16 },
                        new FunctionAttributes() { key = "room_temp", value = new List<string>() { }, curValue = "20", state = "20" },
                        new FunctionAttributes() { key = "swing", value = new List<string>() {"up_down", "left_right", "stop" }, curValue = "20", state = "20" },
                    }
@@ -1734,7 +1352,6 @@
                        new FunctionAttributes() { key = "set_temp",step = "0.5", value = new List<string>() { "16", "30"}, curValue = "16", state = "16",max = 30,min = 16 },
                        new FunctionAttributes() { key = "room_temp", value = new List<string>() { }, curValue = "20", state = "20" },
                        new FunctionAttributes() { key = "swing", value = new List<string>() {"up_down", "left_right", "stop" }, curValue = "20", state = "20" },
                        new FunctionAttributes() { key = "temperature_type", value = new List<string>() { "°F", "°C" }, curValue = "°C", state = "°C" },
                    }
                };
                ac2.SaveFunctionFile();
@@ -1760,7 +1377,7 @@
                //    collect = false,
                //};
                //scene6.SaveSceneFile();
#endregion
                #endregion
                var lightSwitch6 = new Function()
@@ -1797,14 +1414,37 @@
            LoadEventList();
            account = etAccount.Text.Trim();
#if DEBUG1211
            //本地模式
            Button btnLocalMode = new Button()
            {
                Y = Application.GetRealHeight(600),
                Height = Application.GetRealHeight(67),
                Text = "Local Mode",
                TextAlignment = TextAlignment.Center,
                BackgroundColor  = CSS_Color.MainColor,
                TextColor = CSS_Color.TextualColor,
            };
            bodyView.AddChidren(btnLocalMode);
            btnLocalMode.MouseUpEventHandler = (sender, e) =>
            {
                MainPage.LocalMode = true;
                 UserInfo.Current = new UserInfo();
                MainPage.GoUserPage();
            };
            MainPage.Log("etAccount.TextAlignment : " + etAccount.TextAlignment.ToString());
#endif
#region 隐私政策
            AddServiceAgreementControl(bodyView);
#endregion
            #endregion
        }
#region ■ 服务协议___________________________
        #region ■ 服务协议___________________________
        bool isAgreePrivacyPolicy = false;
        /// <summary>
        /// 添加服务协议控件
@@ -1926,12 +1566,12 @@
                OpenWebViewPage(true);
            };
#if __ANDROID__
            #if __ANDROID__
            //if(OnAppConfig.Instance.FirstRunApp || !OnAppConfig.Instance.isAgreePrivacyPolicy)
            //{
            //    HDL_ON_Android.HDLONUtils.StartSplashActivity();    
            //}
#endif
            #endif
        }
        /// <summary>
@@ -1951,13 +1591,6 @@
        /// <returns></returns>
        private bool CheckPrivacyPolicy()
        {
#if DEBUG
            return true;
#endif
            if(HttpUtil.GlobalRequestHttpsHost == "https://test-gz.hdlcontrol.com")
            {
                return true;
            }
            if (isAgreePrivacyPolicy == false)
            {
                //请同意《用户协议》和《隐私政策》
HDL_ON/UI/UI1-Login/LoginPageBLL.cs
@@ -86,9 +86,6 @@
                        btnAccountViewBottomLine.Height = Application.GetRealHeight(2);
                        return;
                    }
#if __IOS__
                    etPassword.Foucs = true;
#endif
                    //加载Loading效果
                    var waitPage = new Loading();
                    bodyView.AddChidren(waitPage);
@@ -230,9 +227,6 @@
                    }
                    //验证码不需要隐藏
                    etPassword.SecureTextEntry = false;
#if __IOS__
                    etPassword.SetTextContentTypeToOneTimeCode();
#endif
                }
                #endregion
            }
@@ -321,7 +315,6 @@
                //}
                //隐藏密码
                etPassword.SecureTextEntry = true;
                //etPassword.IsNumberKeyboardType = false;
            }
            //验证码登录
            else if (logintMode == 1)
@@ -349,9 +342,6 @@
                }
                //验证码不需要隐藏
                etPassword.SecureTextEntry = false;
                etPassword.Text = smsCode;
                //etPassword.IsNumberKeyboardType = true;
            }
        }
@@ -402,7 +392,7 @@
                        {
                            var tip = new Tip()
                            {
                                MaxWidth = Application.GetRealWidth(300),
                            MaxWidth = Application.GetRealWidth(300),
                                Text = Language.StringByID(StringId.PlsEntryCorrectMobilNeumber),
                                CloseTime = 1,
                                Direction = AMPopTipDirection.None
@@ -426,7 +416,7 @@
                        {
                            var tip = new Tip()
                            {
                                MaxWidth = Application.GetRealWidth(300),
                            MaxWidth = Application.GetRealWidth(300),
                                Text = Language.StringByID(StringId.PlsEntryCorrectEmailAddress),
                                CloseTime = 1,
                                Direction = AMPopTipDirection.None
@@ -445,27 +435,9 @@
                {
                    btnPasswordViewBottomLine.BackgroundColor = CSS_Color.MainColor;
                    btnPasswordViewBottomLine.Height = Application.GetRealHeight(2);
#if __IOS__
      new Thread(() => {
                            for(var i = 0; i < 10; i++)
                            {
                                Application.RunOnMainThread(() =>
                                {
                                    this.Y = 0-Application.GetRealHeight(10 * i);
                                });
                                Thread.Sleep(10);
                            }
                        }) { IsBackground = true }.Start();
                    var sst = etPassword.MyTextContentType;
                    Console.WriteLine(sst);
                    etPassword.SetTextContentTypeToOneTimeCode();
#endif
                }
                else
                {
                    this.Y = 0;
                    btnPasswordViewBottomLine.BackgroundColor = CSS_Color.DividingLineColor;
                    btnPasswordViewBottomLine.Height = Application.GetRealHeight(1);
                }
@@ -480,8 +452,12 @@
            etPassword.EditorEnterAction += (obj) =>
            {
                Application.HideSoftInput();
                LoginEvent();
            };
            etPassword.MouseUpEventHandler = (sender, e) =>
            {
                etPassword.Foucs = true;
            };
        }
        /// <summary>
@@ -510,7 +486,49 @@
        {
            btnLogin.MouseUpEventHandler += (sender, e) =>
            {
                LoginEvent();
                if (btnLogin.IsSelected)
                {
                    //判断是否同意了隐私政策
                    if (CheckPrivacyPolicy() == false) return;
                    account = etAccount.Text.Trim();
                    password = etPassword.Text.Trim();
                    if (loginType == 0)
                    {
                        if (!Utlis.CheckPhoneNumber(account, phoneZoneCode))
                        {
                            var tip = new Tip()
                            {
                            MaxWidth = Application.GetRealWidth(300),
                                Text = Language.StringByID(StringId.PlsEntryCorrectMobilNeumber),
                                CloseTime = 1,
                                Direction = AMPopTipDirection.None
                            };
                            tip.Show(bodyView);
                            return;
                        }
                    }
                    else
                    {
                        if (!Utlis.CheckEmail(account))
                        {
                            var tip = new Tip()
                            {
                                Text = Language.StringByID(StringId.PlsEntryCorrectEmailAddress),
                                CloseTime = 1,
                                Direction = AMPopTipDirection.None
                            };
                            tip.Show(bodyView);
                            return;
                        }
                    }
                    //创建登录线程
                    var loginThread = LoadThread_Login();
                    waitPage = new Loading();
                    new PublicAssmebly().LoadPage_WaitPage(loginThread, bodyView, waitPage);
                }
            };
            #region 当账号密码都输入时,才能点击登录按钮
            etAccount.TextChangeEventHandler = (sender, e) =>
@@ -548,58 +566,7 @@
            };
            #endregion
        }
        /// <summary>
        /// 登录事件
        /// </summary>
        void LoginEvent()
        {
            if (btnLogin.IsSelected)
            {
                //判断是否同意了隐私政策
                if (CheckPrivacyPolicy() == false)
                {
                    Application.HideSoftInput();
                    return;
                }
                account = etAccount.Text.Trim();
                password = etPassword.Text.Trim();
                if (loginType == 0)
                {
                    if (!Utlis.CheckPhoneNumber(account, phoneZoneCode))
                    {
                        var tip = new Tip()
                        {
                            MaxWidth = Application.GetRealWidth(300),
                            Text = Language.StringByID(StringId.PlsEntryCorrectMobilNeumber),
                            CloseTime = 1,
                            Direction = AMPopTipDirection.None
                        };
                        tip.Show(bodyView);
                        return;
                    }
                }
                else
                {
                    if (!Utlis.CheckEmail(account))
                    {
                        var tip = new Tip()
                        {
                            Text = Language.StringByID(StringId.PlsEntryCorrectEmailAddress),
                            CloseTime = 1,
                            Direction = AMPopTipDirection.None
                        };
                        tip.Show(bodyView);
                        return;
                    }
                }
                //创建登录线程
                var loginThread = LoadThread_Login();
                waitPage = new Loading();
                new PublicAssmebly().LoadPage_WaitPage(loginThread, bodyView, waitPage);
            }
        }
        /// <summary>
        /// 加载登录线程
        /// </summary>
@@ -730,11 +697,6 @@
                //调用验证码登录接口
                loginResult = pm.LoginValidCode(account, password);
            }
            if(loginResult == null)
            {
                return false;
            }
            if (loginResult.Code == StateCode.SUCCESS)
            {
                var revertData = Newtonsoft.Json.JsonConvert.DeserializeObject<UserLoginRes>(loginResult.Data.ToString());
@@ -771,9 +733,9 @@
                UserInfo.Current.SaveUserInfo();
                MainPage.Log("登录成功。");
#if __IOS__
                var sdm = new SiriKit.SceneDateManager();
                sdm.AccessToken = UserInfo.Current.LoginTokenString;
                sdm.RefreshToken = UserInfo.Current.RefreshToken;
                //var sdm = new SiriKit.SceneDateManager();
                //sdm.AccessToken = UserInfo.Current.LoginTokenString;
                //sdm.RefreshToken = UserInfo.Current.RefreshToken;
#endif
                result = true;
HDL_ON/UI/UI1-Login/RegisterPage.cs
@@ -150,10 +150,12 @@
        /// 获取验证码按钮
        /// </summary>
        Button btnGetVerificationCode_Phone;
        bool btnGetVerificationCode_Phone_isSelected;
        /// <summary>
        /// 获取验证码按钮
        /// </summary>
        Button btnGetVerificationCode_Mail;
        bool btnGetVerificationCode_Mail_isSelected;
        /// <summary>
        /// 验证码子区域底部分割线
        /// </summary>
@@ -238,7 +240,6 @@
            };
            pm = new HttpServerRequest();
        }
        //public RegisterPage(Action action)
HDL_ON/UI/UI1-Login/RegisterPageBLL.cs
@@ -58,24 +58,26 @@
                {
                    if (!Utlis.CheckPhoneNumber(etAccount.Text.Trim(), phoneZoneCode))
                    {
                        btnGetVerificationCode_Phone.IsSelected = false;
                        btnGetVerificationCode_Phone_isSelected = btnGetVerificationCode_Phone.IsSelected = false;
                    }
                    else
                    {
                        if (btnGetVerificationCode_Phone.Text == Language.StringByID(StringId.GetVerificationCode))
                            btnGetVerificationCode_Phone.IsSelected = true;
                        {
                            btnGetVerificationCode_Phone_isSelected = btnGetVerificationCode_Phone.IsSelected = true;
                        }
                    }
                }
                else//邮箱注册获取验证码按钮生效条件
                {
                    if (!Utlis.CheckEmail(etAccount.Text.Trim()))
                    {
                        btnGetVerificationCode_Mail.IsSelected = false;
                        btnGetVerificationCode_Mail_isSelected = btnGetVerificationCode_Mail.IsSelected = false;
                    }
                    else
                    {
                        if (btnGetVerificationCode_Mail.Text == Language.StringByID(StringId.GetVerificationCode))
                            btnGetVerificationCode_Mail.IsSelected = true;
                            btnGetVerificationCode_Mail_isSelected = btnGetVerificationCode_Mail.IsSelected = true;
                    }
                }
                CheckEnableRegisterButton();
@@ -113,6 +115,7 @@
                #region 切换选中按钮
                btnGetVerificationCode_Mail.Visible = false;
                btnGetVerificationCode_Phone.Visible = true;
                btnGetVerificationCode_Phone.IsSelected = btnGetVerificationCode_Phone_isSelected;
                btnEmailLogin.TextColor = CSS_Color.PromptingColor1;
                btnEmailLogin.TextSize = CSS_FontSize.TextFontSize;
                btnPhoneLogin.TextColor = CSS_Color.MainColor;
@@ -148,6 +151,7 @@
                etRepeatPassword.Text = "";
                #region 切换选中按钮
                btnGetVerificationCode_Mail.Visible = true;
                btnGetVerificationCode_Mail.IsSelected = btnGetVerificationCode_Mail_isSelected;
                btnGetVerificationCode_Phone.Visible = false;
                btnPhoneLogin.TextColor = CSS_Color.PromptingColor1;
                btnPhoneLogin.TextSize = CSS_FontSize.TextFontSize;
@@ -194,10 +198,10 @@
                            if (!Utlis.CheckPhoneNumber(etAccount.Text.Trim(), phoneZoneCode))
                            {
                                HDLCommon.Current.BottomLineShowType(btnAccountViewBottomLine, BottomLineType.Error);
                                btnGetVerificationCode_Phone.IsSelected = false;
                                btnGetVerificationCode_Phone_isSelected = btnGetVerificationCode_Phone.IsSelected = false;
                                new Tip()
                                {
                                    MaxWidth = Application.GetRealWidth(300),
                                MaxWidth = Application.GetRealWidth(300),
                                    CloseTime = 1,
                                    Text = Language.StringByID(StringId.PlsEntryCorrectMobilNeumber),
                                    Direction = AMPopTipDirection.None,
@@ -208,7 +212,7 @@
                                if (btnGetVerificationCode_Phone.Text == Language.StringByID(StringId.GetVerificationCode))
                                {
                                    //标记手机号码有效
                                    btnGetVerificationCode_Phone.IsSelected = true;
                                    btnGetVerificationCode_Phone_isSelected = btnGetVerificationCode_Phone.IsSelected = true;
                                }
                                //账号有效、密码有效、验证码输入了,才能点击注册
                                if (ValidPassword && !string.IsNullOrEmpty(etVerificationCode.Text.Trim()))
@@ -223,10 +227,10 @@
                            if (!Utlis.CheckEmail(etAccount.Text.Trim()))
                            {
                                HDLCommon.Current.BottomLineShowType(btnAccountViewBottomLine, BottomLineType.Error);
                                btnGetVerificationCode_Mail.IsSelected = false;
                                btnGetVerificationCode_Mail_isSelected = btnGetVerificationCode_Mail.IsSelected = false;
                                new Tip()
                                {
                                    MaxWidth = Application.GetRealWidth(300),
                            MaxWidth = Application.GetRealWidth(300),
                                    CloseTime = 1,
                                    Text = Language.StringByID(StringId.PlsEntryCorrectEmailAddress),
                                    Direction = AMPopTipDirection.None,
@@ -236,7 +240,7 @@
                            {
                                if (btnGetVerificationCode_Mail.Text == Language.StringByID(StringId.GetVerificationCode))
                                {//标记手机号码有效
                                    btnGetVerificationCode_Mail.IsSelected = true;
                                    btnGetVerificationCode_Mail_isSelected = btnGetVerificationCode_Mail.IsSelected = true;
                                }
                                //账号有效、密码有效、验证码输入了,才能点击注册
                                if (ValidPassword && string.IsNullOrEmpty(etVerificationCode.Text.Trim()))
@@ -688,7 +692,7 @@
            isSelectServer = true;
            ShowServerBottomLineState(false);
            btnServerText.TextColor = CSS_Color.FirstLevelTitleColor;
            btnServerText.Text = OnAppConfig.Instance.GlobalRegion.regionName;
            btnServerText.Text = OnAppConfig.Instance.GlobalRegion.regionName.Replace("HDL","SANTAN");
        }
HDL_ON/UI/UI1-Login/SelectServerDialog.cs
@@ -155,7 +155,7 @@
            rowView.MouseUpEventHandler += eHandler;
            urlBtn.MouseUpEventHandler += eHandler;
            urlBtn.Text = mGlobalRegion.regionName;
            urlBtn.Text = mGlobalRegion.regionName.Replace("HDL", "SANTAN");
            if (mGlobalRegion.regionUrl == OnAppConfig.Instance.RequestHttpsHost)
            {
SiriIntents/Server/HttpUtil.cs
@@ -17,8 +17,10 @@
        /// 公共域名就近解析
        /// </summary>
        public const string GlobalRequestHttpsHost = "https://nearest.hdlcontrol.com";
        const string APP_KEY = "HDL-HOME-APP";
        const string SECRET_KEY = "CPL345bn28gHnvi9G4tYbq3cTYkiHC";
        //const string APP_KEY = "HDL-HOME-APP";
        //const string SECRET_KEY = "CPL345bn28gHnvi9G4tYbq3cTYkiHC";
        const string APP_KEY = "QWERREWQ";
        const string SECRET_KEY = "CPBUCTRLCPBUABCD";
        //public const string GlobalRequestHttpsHost = "https://test-gz.hdlcontrol.com";
SiriKit/Data/NSUserDefaultsHelper.cs
@@ -11,8 +11,8 @@
        public static class StorageKeys
        {
            public const string APP_KEY = "HDL-HOME-APP";
            public const string SECRET_KEY = "CPL345bn28gHnvi9G4tYbq3cTYkiHC";
            public const string APP_KEY = "QWERREWQ";
            public const string SECRET_KEY = "CPBUCTRLCPBUABCD";
            public const string GLOBAL_GIsLogin = "IsLogin";