From 8ac39f2f962329f30ee61ee8a7abe6d6b5940dd5 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期四, 01 七月 2021 13:45:11 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/CJL-LC' into wxr4

---
 HDL-ON_Android/Properties/AndroidManifest.xml                               |   47 
 HDL-ON_Android/Assets/Language.ini                                          |    4 
 HDL-ON_Android/libs/armeabi-v7a/libGMCrypto.so                              |    0 
 HDL-ON_iOS/HDL-ON_iOS.csproj                                                |    9 
 HDL_ON/Common/ApiUtlis.cs                                                   |   48 
 HDL_ON/HDL_ON.projitems                                                     |  529 ++--
 HDL-ON_Android/FengLinVideo/Form/MonitorFragment.cs                         |    2 
 HDL-ON_Android/libs/armeabi-v7a/libSoftAPConfig.so                          |    0 
 HDL-ON_Android/HDL-ON_Android.csproj                                        |   16 
 HDL-ON_Android/Resources/values/strings.xml                                 |    2 
 HDL_ON/Common/HDLCommon.cs                                                  |   24 
 HDL-ON_Android/Resources/Resource.designer.cs                               | 2253 ++++++++++----------
 HDL_ON/Common/OnAppConfig.cs                                                |    2 
 HDL-ON_Android/libs/armeabi-v7a/libjninetsdk.so                             |    0 
 HDL_ON/UI/UI2/3-Intelligence/Scene/CatchSceneAddPage.cs                     |  377 --
 HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs                  |  151 -
 HDL_ON/UI/UI2/FuntionControlView/Video/VideoMainView.cs                     |  115 
 HDL_ON/Common/Constant.cs                                                   |    4 
 HDL_ON/UI/UI2/FuntionControlView/Video/VideoSend.cs                         |   60 
 HDL_ON/UI/UI2/3-Intelligence/IntelligencePage.cs                            |    3 
 HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs                        |    6 
 HDL_ON/UI/UI2/3-Intelligence/Automation/Time3.cs                            |   24 
 DLL/LC/IOS/Shared.IOS.LCVideoOnSDK.dll                                      |    0 
 HDL-ON_Android/LeChengVideo/Form/MonitorFragment.cs                         |  148 +
 HDL-ON_Android/Resources/values-zh/strings.xml                              |    2 
 HDL_ON/UI/UI0-Public/TopViewDiv.cs                                          |    2 
 HDL_ON/DAL/Server/HttpUtil.cs                                               |    4 
 HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs                            |    8 
 HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs                             |   22 
 HDL-ON_Android/LeChengVideo/Form/ReverseCallFragment.cs                     |  317 +++
 HDL_ON/DAL/ThirdPartySdk/ESOnVideo.cs                                       |  363 +++
 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TopView.cs                |   35 
 HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs              |   43 
 HDL-ON_Android/libs/armeabi-v7a/libconfigsdk.so                             |    0 
 HDL_ON/UI/UI2/FuntionControlView/Video/View/ShowDialog.cs                   |    8 
 HDL-ON_Android/libs/armeabi-v7a/libLCOpenApiClient.so                       |    0 
 HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs                         |    6 
 HDL-ON_Android/LeChengVideoActivity.cs                                      |  304 ++
 HDL-ON_Android/libs/armeabi-v7a/libSmartConfig.so                           |    0 
 HDL_ON/UI/UI2/FuntionControlView/Video/VideoMethod.cs                       |   38 
 DLL/LC/Android/LC_SDK.dll                                                   |    0 
 HDL-ON_Android/Application.cs                                               |    6 
 HDL_ON/UI/UI2/3-Intelligence/Automation/WeatherCondition.cs                 |   24 
 HDL_APP_Project.sln                                                         |   14 
 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AddOutputInputTextView.cs |    1 
 HDL-ON_Android/libs/armeabi-v7a/libgnustl_shared.so                         |    0 
 HDL_ON/UI/UI2/FuntionControlView/Video/View/FrameLayout50.cs                |    6 
 HDL_ON/UI/UI2/FuntionControlView/Video/ObjectClass.cs                       |   92 
 HDL-ON_Android/libs/armeabi-v7a/libLechangeSDK.so                           |    0 
 HDL_ON/Entity/FunctionList.cs                                               |   38 
 /dev/null                                                                   |  132 -
 HDL-ON_Android/libs/armeabi-v7a/libnetsdk.so                                |    0 
 HDL_ON/DAL/Server/NewAPI.cs                                                 |   68 
 HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs                         |    1 
 HDL_ON/UI/UI2/UserPageBLL.cs                                                |    1 
 HDL_ON/Common/R.cs                                                          |  760 +++---
 HDL_ON/DAL/Server/HttpServerRequest.cs                                      |    2 
 HDL-ON_Android/Resources/layout/activity_video_phone.xml                    |    5 
 HDL_ON/UI/UI2/3-Intelligence/Automation/Weather.cs                          |    9 
 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirSend.cs                         |    6 
 HDL_ON/UI/UI2/FuntionControlView/Video/View/FrameLayout60.cs                |   11 
 61 files changed, 3,461 insertions(+), 2,691 deletions(-)

diff --git a/DLL/LC/Android/LC_SDK.dll b/DLL/LC/Android/LC_SDK.dll
new file mode 100644
index 0000000..5a649ed
--- /dev/null
+++ b/DLL/LC/Android/LC_SDK.dll
Binary files differ
diff --git a/DLL/LC/IOS/Shared.IOS.LCVideoOnSDK.dll b/DLL/LC/IOS/Shared.IOS.LCVideoOnSDK.dll
new file mode 100644
index 0000000..78a7649
--- /dev/null
+++ b/DLL/LC/IOS/Shared.IOS.LCVideoOnSDK.dll
Binary files differ
diff --git a/HDL-ON_Android/Application.cs b/HDL-ON_Android/Application.cs
index d9d098f..3d29968 100644
--- a/HDL-ON_Android/Application.cs
+++ b/HDL-ON_Android/Application.cs
@@ -228,9 +228,9 @@
         {
             //鎵嬫満鍚嶇О Android.OS.Build.Manufacturer;
             //OnAppConfig.Instance.PhoneName = Android.OS.Build.Manufacturer;
-#if DEBUG
-            CN.Jpush.Android.Api.JPushInterface.SetDebugMode(true);
-#endif
+//#if DEBUG
+            //CN.Jpush.Android.Api.JPushInterface.SetDebugMode(true);
+//#endif
             CN.Jpush.Android.Api.JPushInterface.Init(this);
 
         }
diff --git a/HDL-ON_Android/Assets/Language.ini b/HDL-ON_Android/Assets/Language.ini
index 8e2b536..9d1ba1b 100644
--- a/HDL-ON_Android/Assets/Language.ini
+++ b/HDL-ON_Android/Assets/Language.ini
@@ -328,7 +328,7 @@
 324=Scene delay
 325=Delay setting
 326=Delay
-327=Capture the scene
+327=Catch Scene
 328=Film scene
 329=General
 330=Automatic mode
@@ -1395,7 +1395,7 @@
 324=鍦烘櫙寤舵椂
 325=寤舵椂璁剧疆
 326=寤舵椂
-327=鎹曟崏鍦烘櫙
+327=鎹曡幏鍦烘櫙
 328=鐢靛奖鍦烘櫙
 329=鏅��
 330=鑷姩妯″紡
diff --git a/HDL-ON_Android/FengLinVideo/Form/MonitorFragment.cs b/HDL-ON_Android/FengLinVideo/Form/MonitorFragment.cs
index e67d8e5..d93069d 100644
--- a/HDL-ON_Android/FengLinVideo/Form/MonitorFragment.cs
+++ b/HDL-ON_Android/FengLinVideo/Form/MonitorFragment.cs
@@ -80,7 +80,7 @@
                     unlockImag.Selected = true;
                     JSONObject ht = new JSONObject();
                     ht.Put("command", "open");//鍥哄畾鍙傛暟
-                    ht.Put("room_id", 123);
+                    ht.Put("room_id", VideoActivity.Roomno);
                     ht.Put("devType", 7);
                     mPhone.SendCustomData(ht.ToString());
                 }
diff --git a/HDL-ON_Android/HDL-ON_Android.csproj b/HDL-ON_Android/HDL-ON_Android.csproj
index 473becc..f3aab45 100644
--- a/HDL-ON_Android/HDL-ON_Android.csproj
+++ b/HDL-ON_Android/HDL-ON_Android.csproj
@@ -37,7 +37,6 @@
     <MandroidI18n>cjk</MandroidI18n>
     <AndroidDexTool>d8</AndroidDexTool>
     <AndroidEnableSGenConcurrent>false</AndroidEnableSGenConcurrent>
-    <AndroidLinkMode>None</AndroidLinkMode>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
     <DebugSymbols>True</DebugSymbols>
@@ -156,6 +155,9 @@
     <Reference Include="ys">
       <HintPath>..\DLL\EZvizMonitor\ys.dll</HintPath>
     </Reference>
+    <Reference Include="LC_SDK">
+      <HintPath>..\DLL\LC\Android\LC_SDK.dll</HintPath>
+    </Reference>
   </ItemGroup>
   <ItemGroup>
     <Compile Include="MainActivity.cs" />
@@ -173,6 +175,9 @@
     <Compile Include="FengLinVideo\Form\MonitorFragment.cs" />
     <Compile Include="FengLinVideo\Form\ReverseCallFragment.cs" />
     <Compile Include="FengLinVideo\widget\TipDiaglog.cs" />
+    <Compile Include="LeChengVideo\Form\MonitorFragment.cs" />
+    <Compile Include="LeChengVideo\Form\ReverseCallFragment.cs" />
+    <Compile Include="LeChengVideoActivity.cs" />
   </ItemGroup>
   <ItemGroup>
     <None Include="Resources\AboutResources.txt" />
@@ -1234,6 +1239,15 @@
   <ItemGroup>
     <AndroidNativeLibrary Include="libs\armeabi-v7a\libelianjni.so" />
     <AndroidNativeLibrary Include="libs\armeabi-v7a\libjcore127.so" />
+    <AndroidNativeLibrary Include="libs\armeabi-v7a\libconfigsdk.so" />
+    <AndroidNativeLibrary Include="libs\armeabi-v7a\libGMCrypto.so" />
+    <AndroidNativeLibrary Include="libs\armeabi-v7a\libgnustl_shared.so" />
+    <AndroidNativeLibrary Include="libs\armeabi-v7a\libjninetsdk.so" />
+    <AndroidNativeLibrary Include="libs\armeabi-v7a\libLCOpenApiClient.so" />
+    <AndroidNativeLibrary Include="libs\armeabi-v7a\libLechangeSDK.so" />
+    <AndroidNativeLibrary Include="libs\armeabi-v7a\libnetsdk.so" />
+    <AndroidNativeLibrary Include="libs\armeabi-v7a\libSmartConfig.so" />
+    <AndroidNativeLibrary Include="libs\armeabi-v7a\libSoftAPConfig.so" />
   </ItemGroup>
   <ItemGroup>
     <AndroidAsset Include="Assets\Phone\FunctionIcon\DoorLock\Connect.png" />
diff --git a/HDL-ON_Android/LeChengVideo/Form/MonitorFragment.cs b/HDL-ON_Android/LeChengVideo/Form/MonitorFragment.cs
new file mode 100644
index 0000000..23cefec
--- /dev/null
+++ b/HDL-ON_Android/LeChengVideo/Form/MonitorFragment.cs
@@ -0,0 +1,148 @@
+锘�
+using System.Threading;
+using Android.App;
+using Android.Icu.Text;
+using Android.OS;
+using Android.Views;
+using Android.Widget;
+using Java.Util;
+
+namespace HDL_ON_Android.LeChengView.Form
+{
+    public class MonitorFragment : Fragment, View.IOnClickListener
+    {
+
+        private View mView;
+
+        // 鎴浘
+        private LinearLayout screenshotLayout;
+        private ImageView screenImage;
+        private TextView ScreenText;
+
+        //寮�閿�
+        private LinearLayout unlockLayout;
+        private ImageView unlockImag;
+        private TextView unlockText;
+
+        // 鏇存柊绾跨▼
+        private Thread thread = null;
+
+        private LeChengVideoActivity CurtActivity;
+
+        public override void OnCreate(Bundle savedInstanceState)
+        {
+            base.OnCreate(savedInstanceState);
+
+            CurtActivity = (LeChengVideoActivity)this.Activity;
+        }
+
+        public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
+        {
+            mView = inflater.Inflate(Resource.Layout.fragment_monitor, container, false);
+
+            IniView();
+
+            CurtActivity.Play();
+            CurtActivity.OpenAudio();
+
+            return mView;
+        }
+
+        private void IniView()
+        {
+            screenshotLayout = (LinearLayout)mView.FindViewById(Resource.Id.icon_sceenshotLayout);
+            screenImage = (ImageView)mView.FindViewById(Resource.Id.icon_sceenshotImg);
+            ScreenText = (TextView)mView.FindViewById(Resource.Id.icon_sceenshotText);
+
+            unlockLayout = (LinearLayout)mView.FindViewById(Resource.Id.icon_unlockLayout);
+            unlockImag = (ImageView)mView.FindViewById(Resource.Id.icon_unlockImg);
+            unlockText = (TextView)mView.FindViewById(Resource.Id.icon_unlockText);
+
+            unlockLayout.SetOnClickListener(this);
+            screenshotLayout.SetOnClickListener(this);
+        }
+
+       
+
+        /// <summary>
+        /// 寮�閿�
+        /// </summary>
+        private void Unlock()
+        {
+            //
+        }
+
+        /// <summary>
+        /// 鏇存柊寮�閿佹寜閽姸鎬�
+        /// </summary>
+        private void UpdataUnlockState()
+        {
+            try
+            {
+                //寮�閿佹垚鍔燂紝15绉掑唴涓嶇粰鍐嶇偣鍑绘寜閽�
+                unlockLayout.Enabled = false;
+                if (thread != null)
+                {
+                    try
+                    {
+                        thread.Interrupt();
+                    }
+                    catch { }
+                    thread = null;
+                }
+
+                thread = new Thread(() =>
+                {
+                    try
+                    {
+                        Thread.Sleep(15 * 1000);
+
+                        Activity.RunOnUiThread(() =>
+                        {
+                            if (unlockLayout != null)
+                                unlockLayout.Enabled = true;
+                        });
+                    }
+                    catch { }
+                });
+
+                thread.Start();
+            }
+            catch { }
+        }
+
+        public void OnClick(View v)
+        {
+            //
+            if (v.Equals(unlockLayout))
+            {
+                //寮�閿�
+            }
+            else if (v.Equals(screenshotLayout))
+            {
+                //鏈夎棰戣繃鏉ュ彲璋冪敤姝ゆ帴鍙h繘琛屾媿鐓�
+                // 鍐呴儴鍌ㄥ瓨/DCIM/Camera/.....jpg
+                screenImage.Selected = true;
+                SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
+                string time = format.Format(new Date(SystemClock.CurrentThreadTimeMillis()));
+                string ss = Android.OS.Environment.ExternalStorageDirectory.Path + "/DCIM/Camera";
+                string path = ss + "/" + time + ".jpg";
+            }
+        }
+
+        public override void OnDestroy()
+        {
+            base.OnDestroy();
+
+            if (thread != null)
+            {
+                try
+                {
+                    thread.Interrupt();
+                }
+                catch { }
+                thread = null;
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/HDL-ON_Android/LeChengVideo/Form/ReverseCallFragment.cs b/HDL-ON_Android/LeChengVideo/Form/ReverseCallFragment.cs
new file mode 100644
index 0000000..84d67cf
--- /dev/null
+++ b/HDL-ON_Android/LeChengVideo/Form/ReverseCallFragment.cs
@@ -0,0 +1,317 @@
+锘�
+using System;
+using System.Collections.Generic;
+using System.Threading;
+using Android.App;
+using Android.Icu.Text;
+using Android.OS;
+using Android.Runtime;
+using Android.Util;
+using Android.Views;
+using Android.Widget;
+using HDL_ON.Common;
+using HDL_ON.DAL.Server;
+using Java.Util;
+
+namespace HDL_ON_Android.LeChengView.Form
+{
+    public class ReverseCallFragment : Fragment, View.IOnClickListener
+    {
+
+        private View mView;
+
+        private ImageView screenshotImg;// 鎴浘
+        private ImageView unlockImg;// 寮�閿�
+        private LinearLayout answerLayout; // 鎺ュ惉
+        private ImageView hangupImg;// 鎸傛柇
+        private ImageView answerImg;// 鎺ュ惉
+        private TextView hangupText;
+
+        private TextView tvTip;
+
+        private System.Threading.Timer timer = null;
+        private int Time = 0;
+
+        private static LeChengVideoActivity CurtActivity;
+
+        public override void OnCreate(Bundle savedInstanceState)
+        {
+            base.OnCreate(savedInstanceState);
+
+            CurtActivity = (LeChengVideoActivity)this.Activity;
+        }
+
+        public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
+        {
+            mView = inflater.Inflate(Resource.Layout.fragment_call, container, false);
+
+            IniView();
+
+            CurtActivity.Play();
+
+            CurtActivity.CloseAudio();
+            
+            return mView;
+        }
+
+        private void IniView()
+        {
+            screenshotImg = (ImageView)mView.FindViewById(Resource.Id.callScreenshotImg);//
+            unlockImg = (ImageView)mView.FindViewById(Resource.Id.callUnlockImg);//
+            tvTip = (TextView)mView.FindViewById(Resource.Id.callTipText);
+            answerLayout = (LinearLayout)mView.FindViewById(Resource.Id.callAnswerLayout);
+            hangupImg = (ImageView)mView.FindViewById(Resource.Id.callHangupImg);
+            answerImg = (ImageView)mView.FindViewById(Resource.Id.callAnswerImg);
+            hangupText = (TextView)mView.FindViewById(Resource.Id.callHangupText);
+
+            screenshotImg.SetOnClickListener(this);
+            unlockImg.SetOnClickListener(this);
+            hangupImg.SetOnClickListener(this);
+            answerImg.SetOnClickListener(this);
+
+            hangupText.SetText(GetString(Resource.String.video_not_answer), null);
+            tvTip.SetText(GetString(Resource.String.calling), null);
+        }
+
+
+        /// <summary>
+        /// 寮�閿�
+        /// </summary>
+        private void PostUnlock()
+        {
+            //寮�閿侊紝褰撴敹鍒版潵鐢典俊鎭椂鍙繘琛屽紑閿佹搷浣�
+            new Thread(() =>
+            {
+                try
+                {
+                    Dictionary<string, object> d = new Dictionary<string, object>();
+                    d.Add("deviceId", CurtActivity.DeviceId);//璁惧id
+                    string jsonString = HttpUtil.GetSignRequestJson(d);
+
+                    string url = "/home-wisdom/platform/imou/openDoorbell";
+                    ResponsePackNew response = HttpUtil.RequestHttpsPost(url, jsonString);
+                    Log.Info("LcVideo", "Post Unlock Response code=" + response.Code);
+                }
+                catch { }
+
+            }).Start();
+        }
+
+        /// <summary>
+        /// 鏇存柊寮�閿佹寜閽姸鎬�,寮�閿佹垚鍔燂紝15绉掑唴涓嶇粰鍐嶇偣鍑绘寜閽�
+        /// </summary>
+        private void UpdataUnlockState()
+        {
+            try
+            {
+                if (unlockImg == null) return;
+
+                unlockImg.Enabled = false;
+
+                new Thread(() =>
+                {
+                    Thread.Sleep(15 * 1000);
+                    Activity.RunOnUiThread(() =>
+                    {
+                        if (unlockImg != null)
+                            unlockImg.Enabled = true;
+                    });
+                }).Start();
+            }
+            catch { }
+        }
+
+        private string GetTime(int time)
+        {
+
+            int m = time / 60;
+            int s = time % 60;
+
+            return UnitFormat(m) + ":" + UnitFormat(s);
+
+        }
+
+        private static string UnitFormat(int i)
+        {
+            string retStr = null;
+            if (i >= 0 && i < 10)
+                retStr = "0" + i;
+            else
+                retStr = "" + i;
+            return retStr;
+        }
+
+        /// <summary>
+        /// 閫氳瘽璁板綍璁℃椂鍣紝浠庢媺娴佹垚鍔熷紑濮嬭绠楁椂闂�
+        /// </summary>
+        public void TimeStarts()
+        {
+            try
+            {
+                if (timer != null)
+                    timer.Dispose();
+
+                TimerCallback timerCallback = new TimerCallback(Tick);
+                timer = new System.Threading.Timer(timerCallback, null, 0, 1000);
+
+            }
+            catch (Exception) { }
+        }
+
+        public void TimeEnd()
+        {
+            Time = 0;
+
+            if (timer != null)
+            {
+                timer.Dispose();
+                timer = null;
+            }
+        }
+
+        public void Tick(object state)
+        {
+            try
+            {
+                Activity.RunOnUiThread(() =>
+                {
+                    try
+                    {
+                        Time++;
+                        if (tvTip != null)
+                            tvTip.SetText(GetTime(Time), null);
+                    }
+                    catch { }
+                });
+            }
+            catch { }
+        }
+
+        public void OnClick(View v)
+        {
+            if (v.Equals(answerImg))
+            {
+                //鎺ユ敹鏉ョ數
+                CurtActivity.StartTalk();
+                answerLayout.Visibility = ViewStates.Gone;
+                PostAnswer();
+            }
+            else if (v.Equals(hangupImg))
+            {
+                CurtActivity.StopTalk();
+                PostHangup();
+                TimeEnd();
+                Activity.Finish();
+            }
+            else if (v.Equals(screenshotImg))
+            {
+                //鏈夎棰戣繃鏉ュ彲璋冪敤姝ゆ帴鍙h繘琛屾媿鐓�
+            }
+            else if (v.Equals(unlockImg))
+            {
+                PostUnlock();
+            }
+        }
+
+        /// <summary>
+        /// post 鎴浘
+        /// </summary>
+        /// <param name="path">鎴浘淇濈暀鐨勮矾寰�</param>
+        private void PostScreenshot(string path)
+        {
+            new Thread(() =>
+            {
+                try
+                {
+                    string[] str = path.Split("/");
+                    string img_name = str.GetValue(str.Length - 1).ToString().Replace(".jpg", "");
+                    byte[] images = FileUtlis.Files.ReadFileForPath(path);
+                    Dictionary<string, object> d = new Dictionary<string, object>();
+                    d.Add("callId", VideoActivity.CallId);
+                    d.Add("images", images);
+                    d.Add("imagesName", img_name);
+                    string jsonString = HttpUtil.GetSignRequestJson(d);
+
+                    string url = "/home-wisdom/app/fl/vi/screenshot";
+                    ResponsePackNew response = HttpUtil.RequestHttpsPost(url, jsonString);
+                    Log.Info("LcVideo", "Post Screenshot Response code=" + response.Code);
+                }
+                catch { }
+
+            }).Start();
+        }
+
+        /// <summary>
+        /// post 鎺ュ惉鐢佃瘽璁板綍
+        /// </summary>
+        public void PostAnswer()
+        {
+            new Thread(() =>
+            {
+                try
+                {
+                    Dictionary<string, object> d = new Dictionary<string, object>();
+                    d.Add("callId", CurtActivity.CallId);//鍛煎彨id
+                    d.Add("callStatus", "RECEIVED");//鍙敤鍊�:MISSED,RECEIVED,REJECT
+                    // d.Add("callDuration", Time);//閫氳瘽鏃堕暱锛堢锛�
+                    d.Add("interphoneTypeEnum", "IMOUVISIAL");//鍙敤鍊�:FLVI,IMOUVISIAL
+                    string jsonString = HttpUtil.GetSignRequestJson(d);
+
+                    string url = "/home-wisdom/platform/imou/updateCallStatus";
+                    ResponsePackNew response = HttpUtil.RequestHttpsPost(url, jsonString);
+                    Log.Info("LcVideo", "Post Answer Response code=" + response.Code);
+                }
+                catch { }
+
+            }).Start();
+        }
+
+        /// <summary>
+        /// post 鎸傛柇鐢佃瘽璁板綍
+        /// </summary>
+        public void PostHangup()
+        {
+            new Thread(() =>
+            {
+                try
+                {
+                    Dictionary<string, object> d = new Dictionary<string, object>();
+                    d.Add("callId", CurtActivity.CallId);//鍛煎彨id
+                    //d.Add("callStatus", "REJECT");//鍙敤鍊�:MISSED,RECEIVED,REJECT
+                    d.Add("callDuration", Time);//閫氳瘽鏃堕暱锛堢锛�
+                    d.Add("interphoneTypeEnum", "IMOUVISIAL");//鍙敤鍊�:FLVI,IMOUVISIAL
+                    string jsonString = HttpUtil.GetSignRequestJson(d);
+
+                    string url = "/home-wisdom/platform/imou/updateCallStatus";
+                    ResponsePackNew response = HttpUtil.RequestHttpsPost(url, jsonString);
+                    Log.Info("LcVideo", "Post Hangup Response code=" + response.Code);
+                }
+                catch { }
+
+            }).Start();
+        }
+
+        /// <summary>
+        /// post 鎷掓帴璁板綍,浠呭彧鏈夊湪姝e父鎸傛柇鐘舵�佷笅鎵嶆彁浜ら�氳瘽鏃堕棿
+        /// </summary>
+        public void PostReject()
+        {
+            new Thread(() =>
+            {
+                try
+                {
+                    Dictionary<string, object> d = new Dictionary<string, object>();
+                    d.Add("callId", CurtActivity.CallId);//鍛煎彨id
+                    d.Add("callStatus", "REJECT");//鍙敤鍊�:MISSED,RECEIVED,REJECT
+                    string jsonString = HttpUtil.GetSignRequestJson(d);
+
+                    string url = "/home-wisdom/platform/imou/updateCallStatus";
+                    ResponsePackNew response = HttpUtil.RequestHttpsPost(url, jsonString);
+                    Log.Info("LcVideo", "Post Reject Response code=" + response.Code);
+                }
+                catch { }
+
+            }).Start();
+        }
+    }
+}
diff --git a/HDL-ON_Android/LeChengVideoActivity.cs b/HDL-ON_Android/LeChengVideoActivity.cs
new file mode 100644
index 0000000..9020958
--- /dev/null
+++ b/HDL-ON_Android/LeChengVideoActivity.cs
@@ -0,0 +1,304 @@
+锘�
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using Android;
+using Android.App;
+using Android.Content;
+using Android.Content.PM;
+using Android.Graphics;
+using Android.OS;
+using Android.Runtime;
+using Android.Support.V4.App;
+using Android.Support.V4.Content;
+using Android.Util;
+using Android.Views;
+using Android.Widget;
+using Com.Lechange.Opensdk.Api;
+using Com.Lechange.Opensdk.Device;
+using Com.Lechange.Opensdk.Listener;
+using Com.Lechange.Opensdk.Media;
+using HDL_ON.DAL.Server;
+using HDL_ON_Android.LeChengView.Form;
+using Java.Lang;
+
+namespace HDL_ON_Android
+{
+    [Activity(Label = "LeChengVideoActivity", WindowSoftInputMode = SoftInput.AdjustResize, LaunchMode = LaunchMode.SingleInstance, ConfigurationChanges = (ConfigChanges.Keyboard | ConfigChanges.KeyboardHidden | ConfigChanges.LayoutDirection | ConfigChanges.Locale | ConfigChanges.Orientation | ConfigChanges.ScreenSize), Theme = "@style/MyTheme1", ScreenOrientation = ScreenOrientation.Portrait)]
+    public class LeChengVideoActivity : Activity, View.IOnClickListener
+    {
+        private static LeChengVideoActivity CurtActivity;
+        //
+        private string URL = "openapi.easy4ip.com:443";
+        public string AccessToken = "";
+        public string DeviceId = "";
+        public string Psk = "";
+        public string PlayToken = "";//鎾斁playToken
+        public string CallId = "";//鍛煎彨Id
+        private int Type = 0;//0鐩戞帶锛�1瀵硅
+        /// <summary>
+        /// 0:鍥藉唴锛�1娴峰
+        /// </summary>
+        private int Location = 0;
+
+        private FrameLayout flWindow;
+        private FrameLayout flWindowContent;
+        private ImageView ivBack;
+        private TextView tvName;
+        private MonitorFragment monitorFragment = null;
+        private ReverseCallFragment reverseCallFragment = null;
+
+        public LCOpenSDK_PlayWindow mPlayWindow;
+
+        protected override void OnCreate(Bundle savedInstanceState)
+        {
+            base.OnCreate(savedInstanceState);
+
+            SetContentView(Resource.Layout.activity_video_phone);
+
+            CurtActivity = this;
+            AccessToken = Intent.GetStringExtra("AccessToken");//"St_0000d307a13c965c4db285469484490e"
+            DeviceId = Intent.GetStringExtra("DeviceId");//6K056CFAAJ8FFA1
+            Psk = Intent.GetStringExtra("Psk");//6K056CFAAJ8FFA1
+            PlayToken = Intent.GetStringExtra("PlayToken"); // 鎾斁playToken//"8a5e041afa674a2ba3e84d90a54ea962"
+            Type = Intent.GetIntExtra("Type", 0);//0鐩戞帶锛�1瀵硅//1
+            Location = Intent.GetIntExtra("Location", 0);//1
+            CallId = Intent.GetStringExtra("callId");//1384766990812426242
+
+            InitLCSDK();
+
+            IniView();
+
+            IniData();
+
+            Permissions();
+
+            if (Type == 0)
+            {
+                monitorFragment = new MonitorFragment();
+                FragmentManager.BeginTransaction().Replace(Resource.Id.content, monitorFragment).Commit();
+            }
+            else
+            {
+                reverseCallFragment = new ReverseCallFragment();
+                FragmentManager.BeginTransaction().Replace(Resource.Id.content, reverseCallFragment).Commit();
+            }
+        }
+
+        private void IniView()
+        {
+            //
+            flWindowContent = (FrameLayout)FindViewById(Resource.Id.remoteFrame);
+            flWindow = (FrameLayout)FindViewById(Resource.Id.live_window);
+
+            ivBack = (ImageView)FindViewById(Resource.Id.videoBackImg);
+            tvName = (TextView)FindViewById(Resource.Id.nameText);
+
+            tvName.SetText("DeviceName", null);
+            ivBack.SetOnClickListener(this);
+
+        }
+
+        private void IniData()
+        {
+            //
+            //SetStatusBarColor();// 杩欓噷璁捐鐨凾opBarColor鏄櫧鑹诧紝涓庣郴缁熷鑸爮瀛椾綋棰滆壊涓�鐩达紝鏆傛椂灞忚斀涓嶇敤
+
+            mPlayWindow = new LCOpenSDK_PlayWindow();
+            mPlayWindow.InitPlayWindow(this, flWindowContent, 0, true);
+
+            if (Location == 1)
+                URL = "openapi.easy4ip.com:443";
+        }
+
+        /// <summary>
+        ///  鍒濆鍖栦箰姗欏簱
+        /// </summary>
+        private void InitLCSDK()
+        {
+            InitParams initParams = new InitParams(this, URL, AccessToken);
+            LCOpenSDK_Api.InitOpenApi(initParams);
+        }
+
+        /// <summary>
+        /// 寮�濮嬫挱鏀撅紙棰勮锛�
+        /// </summary>
+        public void Play()
+        {
+            try
+            {
+                LCOpenSDK_ParamReal paramReal = new LCOpenSDK_ParamReal(AccessToken, DeviceId, 0, Psk, PlayToken, 1, false, true);
+                mPlayWindow.PlayRtspReal(paramReal);
+            }
+            catch (System.Exception e)
+            {
+                string sss = e.Message;
+            }
+        }
+
+        /// <summary>
+        /// 鍋滄棰勮锛堝仠姝㈡挱鏀剧敾闈級
+        /// </summary>
+        public void Stop()
+        {
+            mPlayWindow.StopRtspReal(true);//鍏抽棴瑙嗛
+        }
+
+        /// <summary>
+        /// 鎵撳紑瀵硅
+        /// </summary>
+        public void StartTalk()
+        {
+            CloseAudio();// 鍏抽棴Audio
+            LCOpenSDK_Talk.Listener = new AudioTalkerListener();//璁剧疆瀵硅鐩戝惉
+            // 瀵硅鍙傛暟
+            LCOpenSDK_ParamTalk paramTalk = new LCOpenSDK_ParamTalk(AccessToken, DeviceId, -1, Psk, PlayToken, true);
+            LCOpenSDK_Talk.PlayTalk(paramTalk);
+        }
+
+        /// <summary>
+        /// 鍏抽棴瀵硅
+        /// </summary>
+        public void StopTalk()
+        {
+            LCOpenSDK_Talk.StopTalk();
+            LCOpenSDK_Talk.Listener = null;
+        }
+
+        /// <summary>
+        /// 鎵撳紑澹伴煶锛堥瑙堢殑鏃跺�欏彲浠ュ惉鍒伴棬鍙f満浼犳潵鐨勫0闊筹級
+        /// </summary>
+        /// <returns></returns>
+        public bool OpenAudio()
+        {
+            return mPlayWindow.PlayAudio() == 0;
+        }
+
+        /// <summary>
+        /// 鍏抽棴澹伴煶锛堥瑙堢殑鏃跺�欏叧闂棬鍙f尋浼犳潵鐨勫0闊筹紝娉ㄦ剰锛氭墦寮�瀵硅鏃堕渶瑕佸厛璋冪敤姝ゆ柟娉曞叧闂0闊筹級
+        /// </summary>
+        /// <returns></returns>
+        public bool CloseAudio()
+        {
+            return mPlayWindow.StopAudio() == 0;
+        }
+
+        /// <summary>
+        /// 璁剧疆椤堕儴鐘舵�佹爮鑳屾櫙閫忔槑
+        /// </summary>
+        private void SetStatusBarColor()
+        {
+            Window.AddFlags(WindowManagerFlags.DrawsSystemBarBackgrounds);
+            Window.SetStatusBarColor(Color.Transparent);
+        }
+
+        /// <summary>
+        /// 蹇呰鐨勪竴浜涙潈闄�
+        /// </summary>
+        private void Permissions()
+        {
+            string[] mPermissionList = new string[]
+            {
+                Manifest.Permission.WriteExternalStorage,
+                Manifest.Permission.ReadExternalStorage,
+                Manifest.Permission.Camera,
+                Manifest.Permission.RecordAudio
+            };
+
+            foreach (string permissions in mPermissionList)
+            {
+                if (ContextCompat.CheckSelfPermission(this, permissions) != 0)
+                {
+                    ActivityCompat.RequestPermissions(this, new string[] { permissions }, 1);
+                }
+            }
+        }
+
+        /// <summary>
+        /// 鐐瑰嚮浜嬩欢
+        /// </summary>
+        /// <param name="v"></param>
+        public void OnClick(View v)
+        {
+            if (v.Equals(ivBack))
+            {
+                this.Finish();
+            }
+        }
+
+        protected override void OnDestroy()
+        {
+            base.OnDestroy();
+
+            Stop();
+            mPlayWindow.UninitPlayWindow();//閿�姣佸簳灞傝祫婧�
+        }
+
+        /// <summary>
+        /// 瀵硅鐩戝惉
+        /// </summary>
+        class AudioTalkerListener : LCOpenSDK_TalkerListener
+        {
+            /// <summary>
+            /// 瀵硅缁撴灉鍥炶皟
+            /// </summary>
+            /// <param name="error"></param>
+            /// <param name="type"></param>
+            public override void OnTalkResult(string error, int type)
+            {
+                base.OnTalkResult(error, type);
+
+                try
+                {
+                    bool talkResult = false;
+                    if (type == 99 || error.Equals("-1000") || error.Equals("0") || error.Equals("1") || error.Equals("3"))
+                    {
+                        talkResult = false;
+                    }
+                    else if (error.Equals("4"))
+                    {
+                        talkResult = true;
+                    }
+
+                    if (!talkResult)
+                    {
+                        // 鎻愮ず瀵硅鎵撳紑澶辫触
+                        CurtActivity.StopTalk();
+                        CurtActivity.RunOnUiThread(() =>
+                        {
+                            Toast.MakeText(CurtActivity, Resource.String.talk_open_failed, ToastLength.Short).Show();
+                        });
+                    }
+                    else
+                    {
+                        CurtActivity.reverseCallFragment.PostAnswer();// post鎺ュ惉鐢佃瘽锛岀粰浜戠鍋氳褰�
+                        CurtActivity.reverseCallFragment.TimeStarts();//鎺ラ�氭垚鍔熸墦寮�璁℃椂鍣�
+                    }
+                }
+                catch { }
+            }
+
+            public override void OnTalkPlayReady()
+            {
+                base.OnTalkPlayReady();
+            }
+
+            public override void OnAudioReceive(byte[] bytes, int p1, int p2, int p3, int p4)
+            {
+                base.OnAudioReceive(bytes, p1, p2, p3, p4);
+            }
+
+            public override void OnAudioRecord(byte[] bytes, int p1, int p2, int p3, int p4)
+            {
+                base.OnAudioRecord(bytes, p1, p2, p3, p4);
+            }
+
+            public override void OnDataLength(int i)
+            {
+                base.OnDataLength(i);
+            }
+        }
+
+    }
+}
diff --git a/HDL-ON_Android/Properties/AndroidManifest.xml b/HDL-ON_Android/Properties/AndroidManifest.xml
index ff4004d..f5d8738 100644
--- a/HDL-ON_Android/Properties/AndroidManifest.xml
+++ b/HDL-ON_Android/Properties/AndroidManifest.xml
@@ -1,6 +1,49 @@
 锘�<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="202106291" android:versionName="1.2.202106291" package="com.hdl.onpro">
-	<uses-sdk android:minSdkVersion="23" android:targetSdkVersion="29" />
+<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="202104131" android:versionName="1.2.202104131" package="com.hdl.onpro">
+	<uses-sdk android:minSdkVersion="26" android:targetSdkVersion="26" />
+	<!-- 涔愭鍙瀵硅闇�瑕佺殑鏉冮檺 -->
+	<!--<uses-permission android:name="android.permission.INTERNET" />-->
+	<!--缃戠粶璁块棶-->
+	<!--<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />-->
+	<!--鍏佽绋嬪簭鍐欏叆澶栭儴瀛樺偍,濡係D鍗′笂鍐欐枃浠讹紝鎶撳浘銆佸綍鍒剁瓑-->
+	<!--<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />-->
+	<!--绋嬪簭鍙互璇诲彇璁惧澶栭儴瀛樺偍绌洪棿(鍐呯疆SDcard鍜屽缃甋DCard)鐨勬枃浠讹紝鎴戠殑鏂囦欢绛�-->
+	<uses-permission android:name="android.permission.USE_CREDENTIALS" />
+	<!--鍏佽绋嬪簭璇锋眰楠岃瘉浠嶢ccountManager锛燂紵锛�-->
+	<!--<uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE" />-->
+	<!--鍏佽鏀瑰彉WiFi澶氭挱鐘舵�侊紵锛燂紵-->
+	<!--<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />-->
+	<!--鍏佽绋嬪簭鏄剧ず绯荤粺绐楀彛锛屽簲璇ュ凡缁忎笉閫傜敤浜嗭紵锛燂紵-->
+	<!--<uses-permission android:name="android.permission.RECORD_AUDIO" />-->
+	<!--鍏佽绋嬪簭褰曞埗澹伴煶閫氳繃鎵嬫満鎴栬�虫満鐨勯害鍏嬶紝瀵硅銆佽嚜瀹氫箟鎶ヨ闊崇瓑-->
+	<!--<uses-permission android:name="android.permission.CAMERA" />-->
+	<!--鍏佽绋嬪簭璁块棶鎽勫儚澶磋繘琛屾媿鐓э紝浜岀淮鐮佹壂鎻忚ˉ鍏夈�佹媿鐓т笂浼犲浘鐗囩瓑-->
+	<uses-permission android:name="android.permission.FLASHLIGHT" />
+	<!--鍏佽璁块棶闂厜鐏紝浜岀淮鐮佹壂鎻忚ˉ鍏�-->
+	<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
+	<!--鍏佽绋嬪簭淇敼澹伴煶璁剧疆淇℃伅锛屽0娉㈤厤瀵癸紝鑷姩璋冨ぇ闊抽噺銆傞渶姹傚彉鏇翠箣鍚庡簲璇ヤ笉闇�瑕佷簡锛燂紵锛�-->
+	<!--<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />-->
+	<!--鍏佽绋嬪簭鑾峰彇褰撳墠WiFi鎺ュ叆鐨勭姸鎬佷互鍙奧LAN鐑偣鐨勪俊鎭紝璁惧娣诲姞浣曠閰嶇綉娴佺▼浣跨敤-->
+	<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
+	<!--鍏佽绋嬪簭鏀瑰彉WiFi鐘舵�侊紝閰嶇綉绛�-->
+	<!--<uses-feature android:name="android.hardware.camera" />-->
+	<!--<uses-feature android:name="android.hardware.camera.autofocus" />-->
+	<!-- 纭欢鍔犻�熷X5瑙嗛鎾斁闈炲父閲嶈锛屽缓璁紑鍚� -->
+	<uses-permission android:name="android.permission.READ_SETTINGS" />
+	<!--鍏佽绋嬪簭璇诲彇绯荤粺璁剧疆锛屽0娉㈤厤瀵硅幏鍙栧綋鍓嶇郴缁熼煶閲忕瓑-->
+	<!-- Optional for location -->
+	<!--<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />-->
+	<!--鍏佽涓�涓▼搴忚闂瓹ellID鎴� WiFi鐑偣鏉ヨ幏鍙栫矖鐣ョ殑浣嶇疆锛岀櫥闄嗐�佽澶囨坊鍔犵瓑-->
+	<!--<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />-->
+	<!--鍏佽涓�涓▼搴忚闂瓹ellID鎴� WiFi鐑偣鏉ヨ幏鍙栫簿纭殑浣嶇疆锛岀櫥闄嗐�佽澶囨坊鍔犵瓑锛燂紵锛�-->
+	<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
+	<!--鍏佽搴旂敤绋嬪簭璁块棶棰濆鐨勪綅缃彁渚涘懡浠わ紝鐧婚檰銆佽澶囨坊鍔犵瓑锛燂紵锛�-->
+	<!--<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />-->
+	<!--鍏佽绋嬪簭鏀瑰彉缃戠粶鐘舵��,濡傛槸鍚﹁仈缃戯紝閰嶇綉锛燂紵锛�-->
+	<!--<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />-->
+	<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
+	<!--鍏佽搴旂敤绋嬪簭璇锋眰瀹夎鍖呫�傞拡瀵笰PI澶т簬22蹇呴』鎸佹湁璇ヨ鍙娇鐢ˋCTION_INSTALL_PACKAGE搴旂敤銆傚簲璇ユ病鍦ㄧ敤锛燂紵锛�-->
+	<uses-permission android:name="android.permission.VIBRATE" />
 	<!--  鍙瀵硅鏉冮檺-->
 	<uses-permission android:name="android.permission.CAMERA" />
 	<uses-feature android:name="android.hardware.camera" />
diff --git a/HDL-ON_Android/Resources/Resource.designer.cs b/HDL-ON_Android/Resources/Resource.designer.cs
index c504701..2bc20e9 100644
--- a/HDL-ON_Android/Resources/Resource.designer.cs
+++ b/HDL-ON_Android/Resources/Resource.designer.cs
@@ -7970,1384 +7970,1387 @@
 			public const int list_item = 2131296671;
 			
 			// aapt resource value: 0x7F0901A2
-			public const int llyCloundService = 2131296674;
+			public const int live_window = 2131296674;
 			
 			// aapt resource value: 0x7F0901A3
-			public const int llyStatus1 = 2131296675;
+			public const int llyCloundService = 2131296675;
 			
 			// aapt resource value: 0x7F0901A4
-			public const int llyStatus2 = 2131296676;
+			public const int llyStatus1 = 2131296676;
 			
 			// aapt resource value: 0x7F0901A5
-			public const int llyStatus3 = 2131296677;
+			public const int llyStatus2 = 2131296677;
 			
 			// aapt resource value: 0x7F0901A6
-			public const int loadingTextView = 2131296678;
+			public const int llyStatus3 = 2131296678;
 			
 			// aapt resource value: 0x7F0901A7
-			public const int loading_pb_ly = 2131296679;
+			public const int loadingTextView = 2131296679;
 			
 			// aapt resource value: 0x7F0901A8
-			public const int loading_play_btn = 2131296680;
+			public const int loading_pb_ly = 2131296680;
 			
 			// aapt resource value: 0x7F0901A9
-			public const int loading_text = 2131296681;
+			public const int loading_play_btn = 2131296681;
 			
 			// aapt resource value: 0x7F0901AA
-			public const int loading_view = 2131296682;
-			
-			// aapt resource value: 0x7F0901AC
-			public const int localDoorUnlock = 2131296684;
-			
-			// aapt resource value: 0x7F0901AD
-			public const int localVideo = 2131296685;
-			
-			// aapt resource value: 0x7F0901AE
-			public const int local_alarm1 = 2131296686;
-			
-			// aapt resource value: 0x7F0901AF
-			public const int local_alarm2 = 2131296687;
-			
-			// aapt resource value: 0x7F0901B0
-			public const int local_alarm3 = 2131296688;
-			
-			// aapt resource value: 0x7F0901B1
-			public const int local_l1 = 2131296689;
-			
-			// aapt resource value: 0x7F0901B2
-			public const int local_l2 = 2131296690;
-			
-			// aapt resource value: 0x7F0901B3
-			public const int local_l3 = 2131296691;
-			
-			// aapt resource value: 0x7F0901B4
-			public const int local_realplay_btn = 2131296692;
-			
-			// aapt resource value: 0x7F0901B5
-			public const int local_time_part1 = 2131296693;
-			
-			// aapt resource value: 0x7F0901B6
-			public const int local_time_part2 = 2131296694;
-			
-			// aapt resource value: 0x7F0901B7
-			public const int local_time_part3 = 2131296695;
+			public const int loading_text = 2131296682;
 			
 			// aapt resource value: 0x7F0901AB
-			public const int locaVideo = 2131296683;
+			public const int loading_view = 2131296683;
+			
+			// aapt resource value: 0x7F0901AD
+			public const int localDoorUnlock = 2131296685;
+			
+			// aapt resource value: 0x7F0901AE
+			public const int localVideo = 2131296686;
+			
+			// aapt resource value: 0x7F0901AF
+			public const int local_alarm1 = 2131296687;
+			
+			// aapt resource value: 0x7F0901B0
+			public const int local_alarm2 = 2131296688;
+			
+			// aapt resource value: 0x7F0901B1
+			public const int local_alarm3 = 2131296689;
+			
+			// aapt resource value: 0x7F0901B2
+			public const int local_l1 = 2131296690;
+			
+			// aapt resource value: 0x7F0901B3
+			public const int local_l2 = 2131296691;
+			
+			// aapt resource value: 0x7F0901B4
+			public const int local_l3 = 2131296692;
+			
+			// aapt resource value: 0x7F0901B5
+			public const int local_realplay_btn = 2131296693;
+			
+			// aapt resource value: 0x7F0901B6
+			public const int local_time_part1 = 2131296694;
+			
+			// aapt resource value: 0x7F0901B7
+			public const int local_time_part2 = 2131296695;
 			
 			// aapt resource value: 0x7F0901B8
-			public const int login_name = 2131296696;
+			public const int local_time_part3 = 2131296696;
+			
+			// aapt resource value: 0x7F0901AC
+			public const int locaVideo = 2131296684;
 			
 			// aapt resource value: 0x7F0901B9
-			public const int login_pwd = 2131296697;
+			public const int login_name = 2131296697;
 			
 			// aapt resource value: 0x7F0901BA
-			public const int longitude = 2131296698;
+			public const int login_pwd = 2131296698;
 			
 			// aapt resource value: 0x7F0901BB
-			public const int main_layout = 2131296699;
+			public const int longitude = 2131296699;
 			
 			// aapt resource value: 0x7F0901BC
-			public const int masked = 2131296700;
+			public const int main_layout = 2131296700;
+			
+			// aapt resource value: 0x7F0901BD
+			public const int masked = 2131296701;
 			
 			// aapt resource value: 0x7F090009
 			public const int MatchLayout = 2131296265;
 			
-			// aapt resource value: 0x7F0901BD
-			public const int matte_image = 2131296701;
-			
 			// aapt resource value: 0x7F0901BE
-			public const int media_actions = 2131296702;
+			public const int matte_image = 2131296702;
 			
 			// aapt resource value: 0x7F0901BF
-			public const int menu_layout = 2131296703;
+			public const int media_actions = 2131296703;
 			
 			// aapt resource value: 0x7F0901C0
-			public const int menu_play = 2131296704;
+			public const int menu_layout = 2131296704;
 			
 			// aapt resource value: 0x7F0901C1
-			public const int message = 2131296705;
+			public const int menu_play = 2131296705;
 			
 			// aapt resource value: 0x7F0901C2
-			public const int message1 = 2131296706;
+			public const int message = 2131296706;
 			
 			// aapt resource value: 0x7F0901C3
-			public const int message2 = 2131296707;
+			public const int message1 = 2131296707;
 			
 			// aapt resource value: 0x7F0901C4
-			public const int message_check = 2131296708;
+			public const int message2 = 2131296708;
 			
 			// aapt resource value: 0x7F0901C5
-			public const int message_content = 2131296709;
+			public const int message_check = 2131296709;
 			
 			// aapt resource value: 0x7F0901C6
-			public const int message_from = 2131296710;
+			public const int message_content = 2131296710;
 			
 			// aapt resource value: 0x7F0901C7
-			public const int message_from_tip = 2131296711;
+			public const int message_from = 2131296711;
 			
 			// aapt resource value: 0x7F0901C8
-			public const int message_image = 2131296712;
+			public const int message_from_tip = 2131296712;
 			
 			// aapt resource value: 0x7F0901C9
-			public const int message_image_layout = 2131296713;
+			public const int message_image = 2131296713;
 			
 			// aapt resource value: 0x7F0901CA
-			public const int message_image_progress = 2131296714;
+			public const int message_image_layout = 2131296714;
 			
 			// aapt resource value: 0x7F0901CB
-			public const int message_layout = 2131296715;
+			public const int message_image_progress = 2131296715;
 			
 			// aapt resource value: 0x7F0901CC
-			public const int message_list = 2131296716;
+			public const int message_layout = 2131296716;
 			
 			// aapt resource value: 0x7F0901CD
-			public const int message_num_tv = 2131296717;
+			public const int message_list = 2131296717;
 			
 			// aapt resource value: 0x7F0901CE
-			public const int message_play_layout = 2131296718;
+			public const int message_num_tv = 2131296718;
 			
 			// aapt resource value: 0x7F0901CF
-			public const int message_time = 2131296719;
+			public const int message_play_layout = 2131296719;
 			
 			// aapt resource value: 0x7F0901D0
-			public const int message_type = 2131296720;
+			public const int message_time = 2131296720;
 			
 			// aapt resource value: 0x7F0901D1
-			public const int message_unread = 2131296721;
+			public const int message_type = 2131296721;
 			
 			// aapt resource value: 0x7F0901D2
-			public const int message_video_layout = 2131296722;
+			public const int message_unread = 2131296722;
+			
+			// aapt resource value: 0x7F0901D3
+			public const int message_video_layout = 2131296723;
 			
 			// aapt resource value: 0x7F090008
 			public const int META = 2131296264;
 			
-			// aapt resource value: 0x7F0901D4
-			public const int middle = 2131296724;
-			
-			// aapt resource value: 0x7F0901D3
-			public const int mid_vertical_view = 2131296723;
-			
 			// aapt resource value: 0x7F0901D5
-			public const int min = 2131296725;
+			public const int middle = 2131296725;
+			
+			// aapt resource value: 0x7F0901D4
+			public const int mid_vertical_view = 2131296724;
 			
 			// aapt resource value: 0x7F0901D6
-			public const int mini = 2131296726;
+			public const int min = 2131296726;
 			
 			// aapt resource value: 0x7F0901D7
-			public const int mirror_line = 2131296727;
+			public const int mini = 2131296727;
 			
 			// aapt resource value: 0x7F0901D8
-			public const int modify_password_layout = 2131296728;
+			public const int mirror_line = 2131296728;
 			
 			// aapt resource value: 0x7F0901D9
-			public const int monitor = 2131296729;
+			public const int modify_password_layout = 2131296729;
 			
 			// aapt resource value: 0x7F0901DA
-			public const int month = 2131296730;
+			public const int monitor = 2131296730;
 			
 			// aapt resource value: 0x7F0901DB
-			public const int more_btn = 2131296731;
+			public const int month = 2131296731;
 			
 			// aapt resource value: 0x7F0901DC
-			public const int multiply = 2131296732;
+			public const int more_btn = 2131296732;
 			
 			// aapt resource value: 0x7F0901DD
-			public const int myRelativeLayout = 2131296733;
+			public const int multiply = 2131296733;
 			
 			// aapt resource value: 0x7F0901DE
-			public const int myRetry = 2131296734;
+			public const int myRelativeLayout = 2131296734;
 			
 			// aapt resource value: 0x7F0901DF
-			public const int nameText = 2131296735;
+			public const int myRetry = 2131296735;
 			
 			// aapt resource value: 0x7F0901E0
-			public const int name_del = 2131296736;
+			public const int nameText = 2131296736;
 			
 			// aapt resource value: 0x7F0901E1
-			public const int name_text = 2131296737;
+			public const int name_del = 2131296737;
 			
 			// aapt resource value: 0x7F0901E2
-			public const int name_tv = 2131296738;
+			public const int name_text = 2131296738;
 			
 			// aapt resource value: 0x7F0901E3
-			public const int navigation_header_container = 2131296739;
+			public const int name_tv = 2131296739;
 			
 			// aapt resource value: 0x7F0901E4
-			public const int never = 2131296740;
+			public const int navigation_header_container = 2131296740;
 			
 			// aapt resource value: 0x7F0901E5
-			public const int new_password = 2131296741;
+			public const int never = 2131296741;
 			
 			// aapt resource value: 0x7F0901E6
-			public const int next_play_btn = 2131296742;
-			
-			// aapt resource value: 0x7F0901EE
-			public const int none = 2131296750;
-			
-			// aapt resource value: 0x7F0901EF
-			public const int normal = 2131296751;
+			public const int new_password = 2131296742;
 			
 			// aapt resource value: 0x7F0901E7
-			public const int noText = 2131296743;
+			public const int next_play_btn = 2131296743;
+			
+			// aapt resource value: 0x7F0901EF
+			public const int none = 2131296751;
 			
 			// aapt resource value: 0x7F0901F0
-			public const int notification_background = 2131296752;
-			
-			// aapt resource value: 0x7F0901F1
-			public const int notification_main_column = 2131296753;
-			
-			// aapt resource value: 0x7F0901F2
-			public const int notification_main_column_container = 2131296754;
-			
-			// aapt resource value: 0x7F0901F3
-			public const int novideo_img = 2131296755;
-			
-			// aapt resource value: 0x7F0901F4
-			public const int novideo_img_device = 2131296756;
+			public const int normal = 2131296752;
 			
 			// aapt resource value: 0x7F0901E8
-			public const int no_camera_tip_ly = 2131296744;
+			public const int noText = 2131296744;
 			
-			// aapt resource value: 0x7F0901E9
-			public const int no_message_button = 2131296745;
+			// aapt resource value: 0x7F0901F1
+			public const int notification_background = 2131296753;
 			
-			// aapt resource value: 0x7F0901EA
-			public const int no_message_layout = 2131296746;
+			// aapt resource value: 0x7F0901F2
+			public const int notification_main_column = 2131296754;
 			
-			// aapt resource value: 0x7F0901EB
-			public const int no_message_text = 2131296747;
+			// aapt resource value: 0x7F0901F3
+			public const int notification_main_column_container = 2131296755;
 			
-			// aapt resource value: 0x7F0901EC
-			public const int no_more_hint = 2131296748;
-			
-			// aapt resource value: 0x7F0901ED
-			public const int no_more_text = 2131296749;
+			// aapt resource value: 0x7F0901F4
+			public const int novideo_img = 2131296756;
 			
 			// aapt resource value: 0x7F0901F5
-			public const int offline_bg = 2131296757;
+			public const int novideo_img_device = 2131296757;
+			
+			// aapt resource value: 0x7F0901E9
+			public const int no_camera_tip_ly = 2131296745;
+			
+			// aapt resource value: 0x7F0901EA
+			public const int no_message_button = 2131296746;
+			
+			// aapt resource value: 0x7F0901EB
+			public const int no_message_layout = 2131296747;
+			
+			// aapt resource value: 0x7F0901EC
+			public const int no_message_text = 2131296748;
+			
+			// aapt resource value: 0x7F0901ED
+			public const int no_more_hint = 2131296749;
+			
+			// aapt resource value: 0x7F0901EE
+			public const int no_more_text = 2131296750;
 			
 			// aapt resource value: 0x7F0901F6
-			public const int ok_tv = 2131296758;
+			public const int offline_bg = 2131296758;
 			
 			// aapt resource value: 0x7F0901F7
-			public const int options1 = 2131296759;
+			public const int ok_tv = 2131296759;
 			
 			// aapt resource value: 0x7F0901F8
-			public const int options2 = 2131296760;
+			public const int options1 = 2131296760;
 			
 			// aapt resource value: 0x7F0901F9
-			public const int options3 = 2131296761;
+			public const int options2 = 2131296761;
 			
 			// aapt resource value: 0x7F0901FA
-			public const int optionspicker = 2131296762;
+			public const int options3 = 2131296762;
 			
 			// aapt resource value: 0x7F0901FB
-			public const int outmost_container = 2131296763;
+			public const int optionspicker = 2131296763;
 			
 			// aapt resource value: 0x7F0901FC
-			public const int packed = 2131296764;
-			
-			// aapt resource value: 0x7F0901FE
-			public const int pager = 2131296766;
-			
-			// aapt resource value: 0x7F0901FF
-			public const int pager_tab_strip = 2131296767;
+			public const int outmost_container = 2131296764;
 			
 			// aapt resource value: 0x7F0901FD
-			public const int page_container = 2131296765;
+			public const int packed = 2131296765;
+			
+			// aapt resource value: 0x7F0901FF
+			public const int pager = 2131296767;
 			
 			// aapt resource value: 0x7F090200
-			public const int parallax = 2131296768;
+			public const int pager_tab_strip = 2131296768;
+			
+			// aapt resource value: 0x7F0901FE
+			public const int page_container = 2131296766;
 			
 			// aapt resource value: 0x7F090201
-			public const int parent = 2131296769;
+			public const int parallax = 2131296769;
 			
 			// aapt resource value: 0x7F090202
-			public const int parentPanel = 2131296770;
+			public const int parent = 2131296770;
 			
 			// aapt resource value: 0x7F090203
-			public const int parent_matrix = 2131296771;
+			public const int parentPanel = 2131296771;
 			
 			// aapt resource value: 0x7F090204
-			public const int passwordETV = 2131296772;
+			public const int parent_matrix = 2131296772;
 			
 			// aapt resource value: 0x7F090205
-			public const int pb_notlist_title_bar_landscape = 2131296773;
+			public const int passwordETV = 2131296773;
 			
 			// aapt resource value: 0x7F090206
-			public const int pb_play_loading = 2131296774;
+			public const int pb_notlist_title_bar_landscape = 2131296774;
 			
 			// aapt resource value: 0x7F090207
-			public const int pb_search_content_tab = 2131296775;
+			public const int pb_play_loading = 2131296775;
 			
 			// aapt resource value: 0x7F090208
-			public const int pb_search_tab_btn_cloud = 2131296776;
+			public const int pb_search_content_tab = 2131296776;
 			
 			// aapt resource value: 0x7F090209
-			public const int pb_search_tab_btn_device = 2131296777;
+			public const int pb_search_tab_btn_cloud = 2131296777;
 			
 			// aapt resource value: 0x7F09020A
-			public const int pb_title_bar_landscape = 2131296778;
+			public const int pb_search_tab_btn_device = 2131296778;
 			
 			// aapt resource value: 0x7F09020B
-			public const int peerAddress = 2131296779;
+			public const int pb_title_bar_landscape = 2131296779;
 			
 			// aapt resource value: 0x7F09020C
-			public const int percent = 2131296780;
+			public const int peerAddress = 2131296780;
 			
 			// aapt resource value: 0x7F09020D
-			public const int phone_et = 2131296781;
+			public const int percent = 2131296781;
 			
 			// aapt resource value: 0x7F09020E
-			public const int phone_ly = 2131296782;
+			public const int phone_et = 2131296782;
 			
 			// aapt resource value: 0x7F09020F
-			public const int phone_lyt = 2131296783;
+			public const int phone_ly = 2131296783;
 			
 			// aapt resource value: 0x7F090210
-			public const int pin = 2131296784;
-			
-			// aapt resource value: 0x7F090212
-			public const int platform_login_btn = 2131296786;
+			public const int phone_lyt = 2131296784;
 			
 			// aapt resource value: 0x7F090211
-			public const int plat_tv = 2131296785;
+			public const int pin = 2131296785;
 			
 			// aapt resource value: 0x7F090213
-			public const int play_video_layout = 2131296787;
+			public const int platform_login_btn = 2131296787;
+			
+			// aapt resource value: 0x7F090212
+			public const int plat_tv = 2131296786;
 			
 			// aapt resource value: 0x7F090214
-			public const int preview_view = 2131296788;
-			
-			// aapt resource value: 0x7F090219
-			public const int progressbar = 2131296793;
+			public const int play_video_layout = 2131296788;
 			
 			// aapt resource value: 0x7F090215
-			public const int progress_area = 2131296789;
-			
-			// aapt resource value: 0x7F090216
-			public const int progress_circular = 2131296790;
-			
-			// aapt resource value: 0x7F090217
-			public const int progress_horizontal = 2131296791;
-			
-			// aapt resource value: 0x7F090218
-			public const int progress_seekbar = 2131296792;
+			public const int preview_view = 2131296789;
 			
 			// aapt resource value: 0x7F09021A
-			public const int ptz_bottom_btn = 2131296794;
+			public const int progressbar = 2131296794;
+			
+			// aapt resource value: 0x7F090216
+			public const int progress_area = 2131296790;
+			
+			// aapt resource value: 0x7F090217
+			public const int progress_circular = 2131296791;
+			
+			// aapt resource value: 0x7F090218
+			public const int progress_horizontal = 2131296792;
+			
+			// aapt resource value: 0x7F090219
+			public const int progress_seekbar = 2131296793;
 			
 			// aapt resource value: 0x7F09021B
-			public const int ptz_close_btn = 2131296795;
+			public const int ptz_bottom_btn = 2131296795;
 			
 			// aapt resource value: 0x7F09021C
-			public const int ptz_control_ly = 2131296796;
+			public const int ptz_close_btn = 2131296796;
 			
 			// aapt resource value: 0x7F09021D
-			public const int ptz_flip_btn = 2131296797;
+			public const int ptz_control_ly = 2131296797;
 			
 			// aapt resource value: 0x7F09021E
-			public const int ptz_left_btn = 2131296798;
+			public const int ptz_flip_btn = 2131296798;
 			
 			// aapt resource value: 0x7F09021F
-			public const int ptz_right_btn = 2131296799;
+			public const int ptz_left_btn = 2131296799;
 			
 			// aapt resource value: 0x7F090220
-			public const int ptz_top_btn = 2131296800;
+			public const int ptz_right_btn = 2131296800;
 			
 			// aapt resource value: 0x7F090221
-			public const int quality_balanced_btn = 2131296801;
+			public const int ptz_top_btn = 2131296801;
 			
 			// aapt resource value: 0x7F090222
-			public const int quality_close_btn = 2131296802;
+			public const int quality_balanced_btn = 2131296802;
 			
 			// aapt resource value: 0x7F090223
-			public const int quality_flunet_btn = 2131296803;
+			public const int quality_close_btn = 2131296803;
 			
 			// aapt resource value: 0x7F090224
-			public const int quality_hd_btn = 2131296804;
+			public const int quality_flunet_btn = 2131296804;
 			
 			// aapt resource value: 0x7F090225
-			public const int quality_line = 2131296805;
+			public const int quality_hd_btn = 2131296805;
 			
 			// aapt resource value: 0x7F090226
-			public const int quality_super_hd_btn = 2131296806;
-			
-			// aapt resource value: 0x7F090228
-			public const int queryingCameraRyt = 2131296808;
-			
-			// aapt resource value: 0x7F090229
-			public const int querying_camera_tv = 2131296809;
+			public const int quality_line = 2131296806;
 			
 			// aapt resource value: 0x7F090227
-			public const int query_exception_ly = 2131296807;
+			public const int quality_super_hd_btn = 2131296807;
+			
+			// aapt resource value: 0x7F090229
+			public const int queryingCameraRyt = 2131296809;
 			
 			// aapt resource value: 0x7F09022A
-			public const int quit = 2131296810;
+			public const int querying_camera_tv = 2131296810;
+			
+			// aapt resource value: 0x7F090228
+			public const int query_exception_ly = 2131296808;
 			
 			// aapt resource value: 0x7F09022B
-			public const int radio = 2131296811;
+			public const int quit = 2131296811;
 			
 			// aapt resource value: 0x7F09022C
-			public const int range = 2131296812;
+			public const int radio = 2131296812;
 			
 			// aapt resource value: 0x7F09022D
-			public const int rangeSort = 2131296813;
+			public const int range = 2131296813;
 			
 			// aapt resource value: 0x7F09022E
-			public const int rate_16x = 2131296814;
+			public const int rangeSort = 2131296814;
 			
 			// aapt resource value: 0x7F09022F
-			public const int rate_1x = 2131296815;
+			public const int rate_16x = 2131296815;
 			
 			// aapt resource value: 0x7F090230
-			public const int rate_4x = 2131296816;
+			public const int rate_1x = 2131296816;
 			
 			// aapt resource value: 0x7F090231
-			public const int rate_8x = 2131296817;
-			
-			// aapt resource value: 0x7F090233
-			public const int read_button = 2131296819;
-			
-			// aapt resource value: 0x7F090234
-			public const int realplay_area = 2131296820;
-			
-			// aapt resource value: 0x7F090235
-			public const int realplay_back_btn = 2131296821;
-			
-			// aapt resource value: 0x7F090236
-			public const int realplay_capture_iv = 2131296822;
-			
-			// aapt resource value: 0x7F090237
-			public const int realplay_capture_rl = 2131296823;
-			
-			// aapt resource value: 0x7F090238
-			public const int realplay_capture_watermark_iv = 2131296824;
-			
-			// aapt resource value: 0x7F090239
-			public const int realplay_control_bar = 2131296825;
-			
-			// aapt resource value: 0x7F09023A
-			public const int realplay_control_rl = 2131296826;
-			
-			// aapt resource value: 0x7F09023B
-			public const int realplay_display_view = 2131296827;
-			
-			// aapt resource value: 0x7F09023C
-			public const int realplay_flow_tv = 2131296828;
-			
-			// aapt resource value: 0x7F09023D
-			public const int realplay_full_anim_btn = 2131296829;
-			
-			// aapt resource value: 0x7F09023E
-			public const int realplay_full_flow_ly = 2131296830;
-			
-			// aapt resource value: 0x7F09023F
-			public const int realplay_full_flow_tv = 2131296831;
-			
-			// aapt resource value: 0x7F090240
-			public const int realplay_full_operate_bar = 2131296832;
-			
-			// aapt resource value: 0x7F090241
-			public const int realplay_full_operate_layout = 2131296833;
-			
-			// aapt resource value: 0x7F090242
-			public const int realplay_full_play_btn = 2131296834;
-			
-			// aapt resource value: 0x7F090243
-			public const int realplay_full_previously_btn = 2131296835;
-			
-			// aapt resource value: 0x7F090244
-			public const int realplay_full_ptz_anim_btn = 2131296836;
-			
-			// aapt resource value: 0x7F090245
-			public const int realplay_full_ptz_btn = 2131296837;
-			
-			// aapt resource value: 0x7F090246
-			public const int realplay_full_ptz_prompt_iv = 2131296838;
-			
-			// aapt resource value: 0x7F090247
-			public const int realplay_full_rate_tv = 2131296839;
-			
-			// aapt resource value: 0x7F090248
-			public const int realplay_full_sound_btn = 2131296840;
-			
-			// aapt resource value: 0x7F090249
-			public const int realplay_full_talk_anim_btn = 2131296841;
-			
-			// aapt resource value: 0x7F09024A
-			public const int realplay_full_talk_btn = 2131296842;
-			
-			// aapt resource value: 0x7F09024B
-			public const int realplay_full_video_btn = 2131296843;
-			
-			// aapt resource value: 0x7F09024C
-			public const int realplay_full_video_container = 2131296844;
-			
-			// aapt resource value: 0x7F09024D
-			public const int realplay_full_video_start_btn = 2131296845;
-			
-			// aapt resource value: 0x7F09024E
-			public const int realplay_loading = 2131296846;
-			
-			// aapt resource value: 0x7F09024F
-			public const int realplay_loading_rl = 2131296847;
-			
-			// aapt resource value: 0x7F090250
-			public const int realplay_operate_bar = 2131296848;
-			
-			// aapt resource value: 0x7F090251
-			public const int realplay_operate_bar2 = 2131296849;
-			
-			// aapt resource value: 0x7F090252
-			public const int realplay_operate_ly = 2131296850;
-			
-			// aapt resource value: 0x7F090253
-			public const int realplay_operate_ly2 = 2131296851;
-			
-			// aapt resource value: 0x7F090256
-			public const int realplay_pages_gallery = 2131296854;
-			
-			// aapt resource value: 0x7F090254
-			public const int realplay_page_anim_iv = 2131296852;
-			
-			// aapt resource value: 0x7F090255
-			public const int realplay_page_ly = 2131296853;
-			
-			// aapt resource value: 0x7F090257
-			public const int realplay_play_btn = 2131296855;
-			
-			// aapt resource value: 0x7F090258
-			public const int realplay_play_iv = 2131296856;
-			
-			// aapt resource value: 0x7F090259
-			public const int realplay_play_rl = 2131296857;
-			
-			// aapt resource value: 0x7F09025A
-			public const int realplay_previously_btn = 2131296858;
-			
-			// aapt resource value: 0x7F09025B
-			public const int realplay_previously_btn2 = 2131296859;
-			
-			// aapt resource value: 0x7F09025C
-			public const int realplay_previously_btn_ly = 2131296860;
-			
-			// aapt resource value: 0x7F09025D
-			public const int realplay_previously_btn_ly2 = 2131296861;
-			
-			// aapt resource value: 0x7F09025E
-			public const int realplay_privacy_btn = 2131296862;
-			
-			// aapt resource value: 0x7F09025F
-			public const int realplay_privacy_btn2 = 2131296863;
-			
-			// aapt resource value: 0x7F090260
-			public const int realplay_privacy_btn_ly = 2131296864;
-			
-			// aapt resource value: 0x7F090261
-			public const int realplay_privacy_btn_ly2 = 2131296865;
-			
-			// aapt resource value: 0x7F090262
-			public const int realplay_privacy_ly = 2131296866;
-			
-			// aapt resource value: 0x7F090263
-			public const int realplay_privacy_tv = 2131296867;
-			
-			// aapt resource value: 0x7F090264
-			public const int realplay_privacy_tv2 = 2131296868;
-			
-			// aapt resource value: 0x7F090265
-			public const int realplay_prompt_rl = 2131296869;
-			
-			// aapt resource value: 0x7F090266
-			public const int realplay_ptz_btn = 2131296870;
-			
-			// aapt resource value: 0x7F090267
-			public const int realplay_ptz_btn2 = 2131296871;
-			
-			// aapt resource value: 0x7F090268
-			public const int realplay_ptz_btn_ly = 2131296872;
-			
-			// aapt resource value: 0x7F090269
-			public const int realplay_ptz_btn_ly2 = 2131296873;
-			
-			// aapt resource value: 0x7F09026A
-			public const int realplay_ptz_direction_iv = 2131296874;
-			
-			// aapt resource value: 0x7F09026B
-			public const int realplay_quality_btn = 2131296875;
-			
-			// aapt resource value: 0x7F09026C
-			public const int realplay_ratio_tv = 2131296876;
-			
-			// aapt resource value: 0x7F09026D
-			public const int realplay_record_iv = 2131296877;
-			
-			// aapt resource value: 0x7F09026E
-			public const int realplay_record_ly = 2131296878;
-			
-			// aapt resource value: 0x7F09026F
-			public const int realplay_record_tv = 2131296879;
-			
-			// aapt resource value: 0x7F090270
-			public const int realplay_sound_btn = 2131296880;
-			
-			// aapt resource value: 0x7F090271
-			public const int realplay_ssl_btn = 2131296881;
-			
-			// aapt resource value: 0x7F090272
-			public const int realplay_ssl_btn2 = 2131296882;
-			
-			// aapt resource value: 0x7F090273
-			public const int realplay_ssl_btn_ly = 2131296883;
-			
-			// aapt resource value: 0x7F090274
-			public const int realplay_ssl_btn_ly2 = 2131296884;
-			
-			// aapt resource value: 0x7F090275
-			public const int realplay_ssl_btn_rl = 2131296885;
-			
-			// aapt resource value: 0x7F090276
-			public const int realplay_ssl_btn_rl2 = 2131296886;
-			
-			// aapt resource value: 0x7F090277
-			public const int realplay_ssl_progress = 2131296887;
-			
-			// aapt resource value: 0x7F090278
-			public const int realplay_ssl_progress2 = 2131296888;
-			
-			// aapt resource value: 0x7F090279
-			public const int realplay_ssl_tv = 2131296889;
-			
-			// aapt resource value: 0x7F09027A
-			public const int realplay_ssl_tv2 = 2131296890;
-			
-			// aapt resource value: 0x7F09027B
-			public const int realplay_stop_btn = 2131296891;
-			
-			// aapt resource value: 0x7F09027C
-			public const int realplay_sv = 2131296892;
-			
-			// aapt resource value: 0x7F09027D
-			public const int realplay_talk_btn = 2131296893;
-			
-			// aapt resource value: 0x7F09027E
-			public const int realplay_talk_btn2 = 2131296894;
-			
-			// aapt resource value: 0x7F09027F
-			public const int realplay_talk_btn_ly = 2131296895;
-			
-			// aapt resource value: 0x7F090280
-			public const int realplay_talk_btn_ly2 = 2131296896;
-			
-			// aapt resource value: 0x7F090281
-			public const int realplay_tip_tv = 2131296897;
-			
-			// aapt resource value: 0x7F090282
-			public const int realplay_title_tv = 2131296898;
-			
-			// aapt resource value: 0x7F090283
-			public const int realplay_top_bar = 2131296899;
-			
-			// aapt resource value: 0x7F090284
-			public const int realplay_video_btn = 2131296900;
-			
-			// aapt resource value: 0x7F090285
-			public const int realplay_video_btn2 = 2131296901;
-			
-			// aapt resource value: 0x7F090286
-			public const int realplay_video_container = 2131296902;
-			
-			// aapt resource value: 0x7F090287
-			public const int realplay_video_container2 = 2131296903;
-			
-			// aapt resource value: 0x7F090288
-			public const int realplay_video_container_ly = 2131296904;
-			
-			// aapt resource value: 0x7F090289
-			public const int realplay_video_container_ly2 = 2131296905;
-			
-			// aapt resource value: 0x7F09028A
-			public const int realplay_video_start_btn = 2131296906;
-			
-			// aapt resource value: 0x7F09028B
-			public const int realplay_video_start_btn2 = 2131296907;
-			
-			// aapt resource value: 0x7F09028C
-			public const int realplay_waiting_lr = 2131296908;
-			
-			// aapt resource value: 0x7F09028D
-			public const int realplay_watting_pb = 2131296909;
-			
-			// aapt resource value: 0x7F09028E
-			public const int realplay_watting_tv = 2131296910;
-			
-			// aapt resource value: 0x7F09028F
-			public const int realplay_wnd_sv = 2131296911;
-			
-			// aapt resource value: 0x7F090290
-			public const int recycler_view = 2131296912;
-			
-			// aapt resource value: 0x7F090291
-			public const int refresh_button = 2131296913;
-			
-			// aapt resource value: 0x7F090292
-			public const int refresh_layout = 2131296914;
-			
-			// aapt resource value: 0x7F090293
-			public const int refresh_tip = 2131296915;
-			
-			// aapt resource value: 0x7F090294
-			public const int remoteFrame = 2131296916;
-			
-			// aapt resource value: 0x7F090295
-			public const int remoteFrameContainer = 2131296917;
-			
-			// aapt resource value: 0x7F0902A2
-			public const int remoteplayback_begin_time_tv = 2131296930;
-			
-			// aapt resource value: 0x7F0902A3
-			public const int remoteplayback_capture_iv = 2131296931;
-			
-			// aapt resource value: 0x7F0902A4
-			public const int remoteplayback_capture_rl = 2131296932;
-			
-			// aapt resource value: 0x7F0902A5
-			public const int remoteplayback_capture_watermark_iv = 2131296933;
-			
-			// aapt resource value: 0x7F0902A6
-			public const int remoteplayback_control_rl = 2131296934;
-			
-			// aapt resource value: 0x7F0902A7
-			public const int remoteplayback_end_time_tv = 2131296935;
-			
-			// aapt resource value: 0x7F0902A8
-			public const int remoteplayback_file_time_bar = 2131296936;
-			
-			// aapt resource value: 0x7F0902A9
-			public const int remoteplayback_flow_tv = 2131296937;
-			
-			// aapt resource value: 0x7F0902AA
-			public const int remoteplayback_full_down_btn = 2131296938;
-			
-			// aapt resource value: 0x7F0902AB
-			public const int remoteplayback_full_flow_ly = 2131296939;
-			
-			// aapt resource value: 0x7F0902AC
-			public const int remoteplayback_full_flow_tv = 2131296940;
-			
-			// aapt resource value: 0x7F0902AD
-			public const int remoteplayback_full_operate_bar = 2131296941;
-			
-			// aapt resource value: 0x7F0902AE
-			public const int remoteplayback_full_play_btn = 2131296942;
-			
-			// aapt resource value: 0x7F0902AF
-			public const int remoteplayback_full_previously_btn = 2131296943;
-			
-			// aapt resource value: 0x7F0902B0
-			public const int remoteplayback_full_rate_tv = 2131296944;
-			
-			// aapt resource value: 0x7F0902B1
-			public const int remoteplayback_full_sound_btn = 2131296945;
-			
-			// aapt resource value: 0x7F0902B2
-			public const int remoteplayback_full_video_btn = 2131296946;
-			
-			// aapt resource value: 0x7F0902B3
-			public const int remoteplayback_full_video_container = 2131296947;
-			
-			// aapt resource value: 0x7F0902B4
-			public const int remoteplayback_full_video_start_btn = 2131296948;
-			
-			// aapt resource value: 0x7F0902B5
-			public const int remoteplayback_loading_iv = 2131296949;
-			
-			// aapt resource value: 0x7F0902B6
-			public const int remoteplayback_loading_ly = 2131296950;
-			
-			// aapt resource value: 0x7F0902B7
-			public const int remoteplayback_loading_pb_ly = 2131296951;
-			
-			// aapt resource value: 0x7F0902B8
-			public const int remoteplayback_loading_play_btn = 2131296952;
-			
-			// aapt resource value: 0x7F0902B9
-			public const int remoteplayback_loading_tv = 2131296953;
-			
-			// aapt resource value: 0x7F0902BA
-			public const int remoteplayback_operate_bar = 2131296954;
-			
-			// aapt resource value: 0x7F0902BB
-			public const int remoteplayback_page_ly = 2131296955;
-			
-			// aapt resource value: 0x7F0902BC
-			public const int remoteplayback_play_btn = 2131296956;
-			
-			// aapt resource value: 0x7F0902BD
-			public const int remoteplayback_play_rl = 2131296957;
-			
-			// aapt resource value: 0x7F0902BE
-			public const int remoteplayback_previously_btn = 2131296958;
-			
-			// aapt resource value: 0x7F0902C1
-			public const int remoteplayback_progressbar = 2131296961;
-			
-			// aapt resource value: 0x7F0902BF
-			public const int remoteplayback_progress_ly = 2131296959;
-			
-			// aapt resource value: 0x7F0902C0
-			public const int remoteplayback_progress_seekbar = 2131296960;
-			
-			// aapt resource value: 0x7F0902C2
-			public const int remoteplayback_ratio_tv = 2131296962;
-			
-			// aapt resource value: 0x7F0902C3
-			public const int remoteplayback_record_iv = 2131296963;
-			
-			// aapt resource value: 0x7F0902C4
-			public const int remoteplayback_record_ly = 2131296964;
-			
-			// aapt resource value: 0x7F0902C5
-			public const int remoteplayback_record_tv = 2131296965;
-			
-			// aapt resource value: 0x7F0902C6
-			public const int remoteplayback_replay_btn = 2131296966;
-			
-			// aapt resource value: 0x7F0902C7
-			public const int remoteplayback_small_previously_btn = 2131296967;
-			
-			// aapt resource value: 0x7F0902C8
-			public const int remoteplayback_small_video_btn = 2131296968;
-			
-			// aapt resource value: 0x7F0902C9
-			public const int remoteplayback_small_video_container = 2131296969;
-			
-			// aapt resource value: 0x7F0902CA
-			public const int remoteplayback_small_video_start_btn = 2131296970;
-			
-			// aapt resource value: 0x7F0902CB
-			public const int remoteplayback_sound_btn = 2131296971;
-			
-			// aapt resource value: 0x7F0902CC
-			public const int remoteplayback_sv = 2131296972;
-			
-			// aapt resource value: 0x7F0902CE
-			public const int remoteplayback_timebar = 2131296974;
-			
-			// aapt resource value: 0x7F0902CF
-			public const int remoteplayback_timebar_rl = 2131296975;
-			
-			// aapt resource value: 0x7F0902CD
-			public const int remoteplayback_time_tv = 2131296973;
-			
-			// aapt resource value: 0x7F0902D0
-			public const int remoteplayback_tip_tv = 2131296976;
-			
-			// aapt resource value: 0x7F0902D1
-			public const int remoteplayback_video_btn = 2131296977;
-			
-			// aapt resource value: 0x7F0902D2
-			public const int remoteplayback_video_container = 2131296978;
-			
-			// aapt resource value: 0x7F0902D3
-			public const int remoteplayback_video_start_btn = 2131296979;
-			
-			// aapt resource value: 0x7F090296
-			public const int remoteVideo = 2131296918;
-			
-			// aapt resource value: 0x7F090297
-			public const int remote_list_page = 2131296919;
-			
-			// aapt resource value: 0x7F090298
-			public const int remote_loading_buffer_tv = 2131296920;
-			
-			// aapt resource value: 0x7F090299
-			public const int remote_loading_iv = 2131296921;
-			
-			// aapt resource value: 0x7F09029A
-			public const int remote_playback_area = 2131296922;
-			
-			// aapt resource value: 0x7F09029B
-			public const int remote_playback_capture_btn = 2131296923;
-			
-			// aapt resource value: 0x7F09029C
-			public const int remote_playback_download_btn = 2131296924;
-			
-			// aapt resource value: 0x7F09029D
-			public const int remote_playback_flow_tv = 2131296925;
-			
-			// aapt resource value: 0x7F09029E
-			public const int remote_playback_pause_btn = 2131296926;
-			
-			// aapt resource value: 0x7F09029F
-			public const int remote_playback_sound_btn = 2131296927;
-			
-			// aapt resource value: 0x7F0902A0
-			public const int remote_playback_video_recording_btn = 2131296928;
-			
-			// aapt resource value: 0x7F0902A1
-			public const int remote_playback_wnd_sv = 2131296929;
-			
-			// aapt resource value: 0x7F0902D4
-			public const int render_texture_view = 2131296980;
-			
-			// aapt resource value: 0x7F0902D5
-			public const int render_texture_view_soft = 2131296981;
-			
-			// aapt resource value: 0x7F0902D6
-			public const int replay_btn = 2131296982;
-			
-			// aapt resource value: 0x7F0902D7
-			public const int requestA = 2131296983;
-			
-			// aapt resource value: 0x7F0902D8
-			public const int requestMasterAudio = 2131296984;
-			
-			// aapt resource value: 0x7F0902D9
-			public const int requestMasterVideo = 2131296985;
-			
-			// aapt resource value: 0x7F0902DA
-			public const int requestV = 2131296986;
-			
-			// aapt resource value: 0x7F0902DB
-			public const int restart_preview = 2131296987;
-			
-			// aapt resource value: 0x7F0902DC
-			public const int retry_btn = 2131296988;
-			
-			// aapt resource value: 0x7F0902DD
-			public const int retry_button = 2131296989;
-			
-			// aapt resource value: 0x7F0902DE
-			public const int return_scan_result = 2131296990;
-			
-			// aapt resource value: 0x7F0902DF
-			public const int reverseCall = 2131296991;
-			
-			// aapt resource value: 0x7F0902E0
-			public const int reverseCallInfo = 2131296992;
+			public const int rate_4x = 2131296817;
 			
 			// aapt resource value: 0x7F090232
-			public const int re_next_area = 2131296818;
+			public const int rate_8x = 2131296818;
+			
+			// aapt resource value: 0x7F090234
+			public const int read_button = 2131296820;
+			
+			// aapt resource value: 0x7F090235
+			public const int realplay_area = 2131296821;
+			
+			// aapt resource value: 0x7F090236
+			public const int realplay_back_btn = 2131296822;
+			
+			// aapt resource value: 0x7F090237
+			public const int realplay_capture_iv = 2131296823;
+			
+			// aapt resource value: 0x7F090238
+			public const int realplay_capture_rl = 2131296824;
+			
+			// aapt resource value: 0x7F090239
+			public const int realplay_capture_watermark_iv = 2131296825;
+			
+			// aapt resource value: 0x7F09023A
+			public const int realplay_control_bar = 2131296826;
+			
+			// aapt resource value: 0x7F09023B
+			public const int realplay_control_rl = 2131296827;
+			
+			// aapt resource value: 0x7F09023C
+			public const int realplay_display_view = 2131296828;
+			
+			// aapt resource value: 0x7F09023D
+			public const int realplay_flow_tv = 2131296829;
+			
+			// aapt resource value: 0x7F09023E
+			public const int realplay_full_anim_btn = 2131296830;
+			
+			// aapt resource value: 0x7F09023F
+			public const int realplay_full_flow_ly = 2131296831;
+			
+			// aapt resource value: 0x7F090240
+			public const int realplay_full_flow_tv = 2131296832;
+			
+			// aapt resource value: 0x7F090241
+			public const int realplay_full_operate_bar = 2131296833;
+			
+			// aapt resource value: 0x7F090242
+			public const int realplay_full_operate_layout = 2131296834;
+			
+			// aapt resource value: 0x7F090243
+			public const int realplay_full_play_btn = 2131296835;
+			
+			// aapt resource value: 0x7F090244
+			public const int realplay_full_previously_btn = 2131296836;
+			
+			// aapt resource value: 0x7F090245
+			public const int realplay_full_ptz_anim_btn = 2131296837;
+			
+			// aapt resource value: 0x7F090246
+			public const int realplay_full_ptz_btn = 2131296838;
+			
+			// aapt resource value: 0x7F090247
+			public const int realplay_full_ptz_prompt_iv = 2131296839;
+			
+			// aapt resource value: 0x7F090248
+			public const int realplay_full_rate_tv = 2131296840;
+			
+			// aapt resource value: 0x7F090249
+			public const int realplay_full_sound_btn = 2131296841;
+			
+			// aapt resource value: 0x7F09024A
+			public const int realplay_full_talk_anim_btn = 2131296842;
+			
+			// aapt resource value: 0x7F09024B
+			public const int realplay_full_talk_btn = 2131296843;
+			
+			// aapt resource value: 0x7F09024C
+			public const int realplay_full_video_btn = 2131296844;
+			
+			// aapt resource value: 0x7F09024D
+			public const int realplay_full_video_container = 2131296845;
+			
+			// aapt resource value: 0x7F09024E
+			public const int realplay_full_video_start_btn = 2131296846;
+			
+			// aapt resource value: 0x7F09024F
+			public const int realplay_loading = 2131296847;
+			
+			// aapt resource value: 0x7F090250
+			public const int realplay_loading_rl = 2131296848;
+			
+			// aapt resource value: 0x7F090251
+			public const int realplay_operate_bar = 2131296849;
+			
+			// aapt resource value: 0x7F090252
+			public const int realplay_operate_bar2 = 2131296850;
+			
+			// aapt resource value: 0x7F090253
+			public const int realplay_operate_ly = 2131296851;
+			
+			// aapt resource value: 0x7F090254
+			public const int realplay_operate_ly2 = 2131296852;
+			
+			// aapt resource value: 0x7F090257
+			public const int realplay_pages_gallery = 2131296855;
+			
+			// aapt resource value: 0x7F090255
+			public const int realplay_page_anim_iv = 2131296853;
+			
+			// aapt resource value: 0x7F090256
+			public const int realplay_page_ly = 2131296854;
+			
+			// aapt resource value: 0x7F090258
+			public const int realplay_play_btn = 2131296856;
+			
+			// aapt resource value: 0x7F090259
+			public const int realplay_play_iv = 2131296857;
+			
+			// aapt resource value: 0x7F09025A
+			public const int realplay_play_rl = 2131296858;
+			
+			// aapt resource value: 0x7F09025B
+			public const int realplay_previously_btn = 2131296859;
+			
+			// aapt resource value: 0x7F09025C
+			public const int realplay_previously_btn2 = 2131296860;
+			
+			// aapt resource value: 0x7F09025D
+			public const int realplay_previously_btn_ly = 2131296861;
+			
+			// aapt resource value: 0x7F09025E
+			public const int realplay_previously_btn_ly2 = 2131296862;
+			
+			// aapt resource value: 0x7F09025F
+			public const int realplay_privacy_btn = 2131296863;
+			
+			// aapt resource value: 0x7F090260
+			public const int realplay_privacy_btn2 = 2131296864;
+			
+			// aapt resource value: 0x7F090261
+			public const int realplay_privacy_btn_ly = 2131296865;
+			
+			// aapt resource value: 0x7F090262
+			public const int realplay_privacy_btn_ly2 = 2131296866;
+			
+			// aapt resource value: 0x7F090263
+			public const int realplay_privacy_ly = 2131296867;
+			
+			// aapt resource value: 0x7F090264
+			public const int realplay_privacy_tv = 2131296868;
+			
+			// aapt resource value: 0x7F090265
+			public const int realplay_privacy_tv2 = 2131296869;
+			
+			// aapt resource value: 0x7F090266
+			public const int realplay_prompt_rl = 2131296870;
+			
+			// aapt resource value: 0x7F090267
+			public const int realplay_ptz_btn = 2131296871;
+			
+			// aapt resource value: 0x7F090268
+			public const int realplay_ptz_btn2 = 2131296872;
+			
+			// aapt resource value: 0x7F090269
+			public const int realplay_ptz_btn_ly = 2131296873;
+			
+			// aapt resource value: 0x7F09026A
+			public const int realplay_ptz_btn_ly2 = 2131296874;
+			
+			// aapt resource value: 0x7F09026B
+			public const int realplay_ptz_direction_iv = 2131296875;
+			
+			// aapt resource value: 0x7F09026C
+			public const int realplay_quality_btn = 2131296876;
+			
+			// aapt resource value: 0x7F09026D
+			public const int realplay_ratio_tv = 2131296877;
+			
+			// aapt resource value: 0x7F09026E
+			public const int realplay_record_iv = 2131296878;
+			
+			// aapt resource value: 0x7F09026F
+			public const int realplay_record_ly = 2131296879;
+			
+			// aapt resource value: 0x7F090270
+			public const int realplay_record_tv = 2131296880;
+			
+			// aapt resource value: 0x7F090271
+			public const int realplay_sound_btn = 2131296881;
+			
+			// aapt resource value: 0x7F090272
+			public const int realplay_ssl_btn = 2131296882;
+			
+			// aapt resource value: 0x7F090273
+			public const int realplay_ssl_btn2 = 2131296883;
+			
+			// aapt resource value: 0x7F090274
+			public const int realplay_ssl_btn_ly = 2131296884;
+			
+			// aapt resource value: 0x7F090275
+			public const int realplay_ssl_btn_ly2 = 2131296885;
+			
+			// aapt resource value: 0x7F090276
+			public const int realplay_ssl_btn_rl = 2131296886;
+			
+			// aapt resource value: 0x7F090277
+			public const int realplay_ssl_btn_rl2 = 2131296887;
+			
+			// aapt resource value: 0x7F090278
+			public const int realplay_ssl_progress = 2131296888;
+			
+			// aapt resource value: 0x7F090279
+			public const int realplay_ssl_progress2 = 2131296889;
+			
+			// aapt resource value: 0x7F09027A
+			public const int realplay_ssl_tv = 2131296890;
+			
+			// aapt resource value: 0x7F09027B
+			public const int realplay_ssl_tv2 = 2131296891;
+			
+			// aapt resource value: 0x7F09027C
+			public const int realplay_stop_btn = 2131296892;
+			
+			// aapt resource value: 0x7F09027D
+			public const int realplay_sv = 2131296893;
+			
+			// aapt resource value: 0x7F09027E
+			public const int realplay_talk_btn = 2131296894;
+			
+			// aapt resource value: 0x7F09027F
+			public const int realplay_talk_btn2 = 2131296895;
+			
+			// aapt resource value: 0x7F090280
+			public const int realplay_talk_btn_ly = 2131296896;
+			
+			// aapt resource value: 0x7F090281
+			public const int realplay_talk_btn_ly2 = 2131296897;
+			
+			// aapt resource value: 0x7F090282
+			public const int realplay_tip_tv = 2131296898;
+			
+			// aapt resource value: 0x7F090283
+			public const int realplay_title_tv = 2131296899;
+			
+			// aapt resource value: 0x7F090284
+			public const int realplay_top_bar = 2131296900;
+			
+			// aapt resource value: 0x7F090285
+			public const int realplay_video_btn = 2131296901;
+			
+			// aapt resource value: 0x7F090286
+			public const int realplay_video_btn2 = 2131296902;
+			
+			// aapt resource value: 0x7F090287
+			public const int realplay_video_container = 2131296903;
+			
+			// aapt resource value: 0x7F090288
+			public const int realplay_video_container2 = 2131296904;
+			
+			// aapt resource value: 0x7F090289
+			public const int realplay_video_container_ly = 2131296905;
+			
+			// aapt resource value: 0x7F09028A
+			public const int realplay_video_container_ly2 = 2131296906;
+			
+			// aapt resource value: 0x7F09028B
+			public const int realplay_video_start_btn = 2131296907;
+			
+			// aapt resource value: 0x7F09028C
+			public const int realplay_video_start_btn2 = 2131296908;
+			
+			// aapt resource value: 0x7F09028D
+			public const int realplay_waiting_lr = 2131296909;
+			
+			// aapt resource value: 0x7F09028E
+			public const int realplay_watting_pb = 2131296910;
+			
+			// aapt resource value: 0x7F09028F
+			public const int realplay_watting_tv = 2131296911;
+			
+			// aapt resource value: 0x7F090290
+			public const int realplay_wnd_sv = 2131296912;
+			
+			// aapt resource value: 0x7F090291
+			public const int recycler_view = 2131296913;
+			
+			// aapt resource value: 0x7F090292
+			public const int refresh_button = 2131296914;
+			
+			// aapt resource value: 0x7F090293
+			public const int refresh_layout = 2131296915;
+			
+			// aapt resource value: 0x7F090294
+			public const int refresh_tip = 2131296916;
+			
+			// aapt resource value: 0x7F090295
+			public const int remoteFrame = 2131296917;
+			
+			// aapt resource value: 0x7F090296
+			public const int remoteFrameContainer = 2131296918;
+			
+			// aapt resource value: 0x7F0902A3
+			public const int remoteplayback_begin_time_tv = 2131296931;
+			
+			// aapt resource value: 0x7F0902A4
+			public const int remoteplayback_capture_iv = 2131296932;
+			
+			// aapt resource value: 0x7F0902A5
+			public const int remoteplayback_capture_rl = 2131296933;
+			
+			// aapt resource value: 0x7F0902A6
+			public const int remoteplayback_capture_watermark_iv = 2131296934;
+			
+			// aapt resource value: 0x7F0902A7
+			public const int remoteplayback_control_rl = 2131296935;
+			
+			// aapt resource value: 0x7F0902A8
+			public const int remoteplayback_end_time_tv = 2131296936;
+			
+			// aapt resource value: 0x7F0902A9
+			public const int remoteplayback_file_time_bar = 2131296937;
+			
+			// aapt resource value: 0x7F0902AA
+			public const int remoteplayback_flow_tv = 2131296938;
+			
+			// aapt resource value: 0x7F0902AB
+			public const int remoteplayback_full_down_btn = 2131296939;
+			
+			// aapt resource value: 0x7F0902AC
+			public const int remoteplayback_full_flow_ly = 2131296940;
+			
+			// aapt resource value: 0x7F0902AD
+			public const int remoteplayback_full_flow_tv = 2131296941;
+			
+			// aapt resource value: 0x7F0902AE
+			public const int remoteplayback_full_operate_bar = 2131296942;
+			
+			// aapt resource value: 0x7F0902AF
+			public const int remoteplayback_full_play_btn = 2131296943;
+			
+			// aapt resource value: 0x7F0902B0
+			public const int remoteplayback_full_previously_btn = 2131296944;
+			
+			// aapt resource value: 0x7F0902B1
+			public const int remoteplayback_full_rate_tv = 2131296945;
+			
+			// aapt resource value: 0x7F0902B2
+			public const int remoteplayback_full_sound_btn = 2131296946;
+			
+			// aapt resource value: 0x7F0902B3
+			public const int remoteplayback_full_video_btn = 2131296947;
+			
+			// aapt resource value: 0x7F0902B4
+			public const int remoteplayback_full_video_container = 2131296948;
+			
+			// aapt resource value: 0x7F0902B5
+			public const int remoteplayback_full_video_start_btn = 2131296949;
+			
+			// aapt resource value: 0x7F0902B6
+			public const int remoteplayback_loading_iv = 2131296950;
+			
+			// aapt resource value: 0x7F0902B7
+			public const int remoteplayback_loading_ly = 2131296951;
+			
+			// aapt resource value: 0x7F0902B8
+			public const int remoteplayback_loading_pb_ly = 2131296952;
+			
+			// aapt resource value: 0x7F0902B9
+			public const int remoteplayback_loading_play_btn = 2131296953;
+			
+			// aapt resource value: 0x7F0902BA
+			public const int remoteplayback_loading_tv = 2131296954;
+			
+			// aapt resource value: 0x7F0902BB
+			public const int remoteplayback_operate_bar = 2131296955;
+			
+			// aapt resource value: 0x7F0902BC
+			public const int remoteplayback_page_ly = 2131296956;
+			
+			// aapt resource value: 0x7F0902BD
+			public const int remoteplayback_play_btn = 2131296957;
+			
+			// aapt resource value: 0x7F0902BE
+			public const int remoteplayback_play_rl = 2131296958;
+			
+			// aapt resource value: 0x7F0902BF
+			public const int remoteplayback_previously_btn = 2131296959;
+			
+			// aapt resource value: 0x7F0902C2
+			public const int remoteplayback_progressbar = 2131296962;
+			
+			// aapt resource value: 0x7F0902C0
+			public const int remoteplayback_progress_ly = 2131296960;
+			
+			// aapt resource value: 0x7F0902C1
+			public const int remoteplayback_progress_seekbar = 2131296961;
+			
+			// aapt resource value: 0x7F0902C3
+			public const int remoteplayback_ratio_tv = 2131296963;
+			
+			// aapt resource value: 0x7F0902C4
+			public const int remoteplayback_record_iv = 2131296964;
+			
+			// aapt resource value: 0x7F0902C5
+			public const int remoteplayback_record_ly = 2131296965;
+			
+			// aapt resource value: 0x7F0902C6
+			public const int remoteplayback_record_tv = 2131296966;
+			
+			// aapt resource value: 0x7F0902C7
+			public const int remoteplayback_replay_btn = 2131296967;
+			
+			// aapt resource value: 0x7F0902C8
+			public const int remoteplayback_small_previously_btn = 2131296968;
+			
+			// aapt resource value: 0x7F0902C9
+			public const int remoteplayback_small_video_btn = 2131296969;
+			
+			// aapt resource value: 0x7F0902CA
+			public const int remoteplayback_small_video_container = 2131296970;
+			
+			// aapt resource value: 0x7F0902CB
+			public const int remoteplayback_small_video_start_btn = 2131296971;
+			
+			// aapt resource value: 0x7F0902CC
+			public const int remoteplayback_sound_btn = 2131296972;
+			
+			// aapt resource value: 0x7F0902CD
+			public const int remoteplayback_sv = 2131296973;
+			
+			// aapt resource value: 0x7F0902CF
+			public const int remoteplayback_timebar = 2131296975;
+			
+			// aapt resource value: 0x7F0902D0
+			public const int remoteplayback_timebar_rl = 2131296976;
+			
+			// aapt resource value: 0x7F0902CE
+			public const int remoteplayback_time_tv = 2131296974;
+			
+			// aapt resource value: 0x7F0902D1
+			public const int remoteplayback_tip_tv = 2131296977;
+			
+			// aapt resource value: 0x7F0902D2
+			public const int remoteplayback_video_btn = 2131296978;
+			
+			// aapt resource value: 0x7F0902D3
+			public const int remoteplayback_video_container = 2131296979;
+			
+			// aapt resource value: 0x7F0902D4
+			public const int remoteplayback_video_start_btn = 2131296980;
+			
+			// aapt resource value: 0x7F090297
+			public const int remoteVideo = 2131296919;
+			
+			// aapt resource value: 0x7F090298
+			public const int remote_list_page = 2131296920;
+			
+			// aapt resource value: 0x7F090299
+			public const int remote_loading_buffer_tv = 2131296921;
+			
+			// aapt resource value: 0x7F09029A
+			public const int remote_loading_iv = 2131296922;
+			
+			// aapt resource value: 0x7F09029B
+			public const int remote_playback_area = 2131296923;
+			
+			// aapt resource value: 0x7F09029C
+			public const int remote_playback_capture_btn = 2131296924;
+			
+			// aapt resource value: 0x7F09029D
+			public const int remote_playback_download_btn = 2131296925;
+			
+			// aapt resource value: 0x7F09029E
+			public const int remote_playback_flow_tv = 2131296926;
+			
+			// aapt resource value: 0x7F09029F
+			public const int remote_playback_pause_btn = 2131296927;
+			
+			// aapt resource value: 0x7F0902A0
+			public const int remote_playback_sound_btn = 2131296928;
+			
+			// aapt resource value: 0x7F0902A1
+			public const int remote_playback_video_recording_btn = 2131296929;
+			
+			// aapt resource value: 0x7F0902A2
+			public const int remote_playback_wnd_sv = 2131296930;
+			
+			// aapt resource value: 0x7F0902D5
+			public const int render_texture_view = 2131296981;
+			
+			// aapt resource value: 0x7F0902D6
+			public const int render_texture_view_soft = 2131296982;
+			
+			// aapt resource value: 0x7F0902D7
+			public const int replay_btn = 2131296983;
+			
+			// aapt resource value: 0x7F0902D8
+			public const int requestA = 2131296984;
+			
+			// aapt resource value: 0x7F0902D9
+			public const int requestMasterAudio = 2131296985;
+			
+			// aapt resource value: 0x7F0902DA
+			public const int requestMasterVideo = 2131296986;
+			
+			// aapt resource value: 0x7F0902DB
+			public const int requestV = 2131296987;
+			
+			// aapt resource value: 0x7F0902DC
+			public const int restart_preview = 2131296988;
+			
+			// aapt resource value: 0x7F0902DD
+			public const int retry_btn = 2131296989;
+			
+			// aapt resource value: 0x7F0902DE
+			public const int retry_button = 2131296990;
+			
+			// aapt resource value: 0x7F0902DF
+			public const int return_scan_result = 2131296991;
+			
+			// aapt resource value: 0x7F0902E0
+			public const int reverseCall = 2131296992;
 			
 			// aapt resource value: 0x7F0902E1
-			public const int right = 2131296993;
+			public const int reverseCallInfo = 2131296993;
+			
+			// aapt resource value: 0x7F090233
+			public const int re_next_area = 2131296819;
 			
 			// aapt resource value: 0x7F0902E2
-			public const int right_icon = 2131296994;
+			public const int right = 2131296994;
 			
 			// aapt resource value: 0x7F0902E3
-			public const int right_side = 2131296995;
+			public const int right_icon = 2131296995;
 			
 			// aapt resource value: 0x7F0902E4
-			public const int rv_multi_screen = 2131296996;
+			public const int right_side = 2131296996;
 			
 			// aapt resource value: 0x7F0902E5
-			public const int rv_topbar = 2131296997;
+			public const int rv_multi_screen = 2131296997;
 			
 			// aapt resource value: 0x7F0902E6
-			public const int safe_box_tip = 2131296998;
+			public const int rv_topbar = 2131296998;
 			
 			// aapt resource value: 0x7F0902E7
-			public const int sample_text = 2131296999;
+			public const int safe_box_tip = 2131296999;
 			
 			// aapt resource value: 0x7F0902E8
-			public const int save_image_matrix = 2131297000;
+			public const int sample_text = 2131297000;
 			
 			// aapt resource value: 0x7F0902E9
-			public const int save_non_transition_alpha = 2131297001;
+			public const int save_image_matrix = 2131297001;
 			
 			// aapt resource value: 0x7F0902EA
-			public const int save_scale_type = 2131297002;
+			public const int save_non_transition_alpha = 2131297002;
+			
+			// aapt resource value: 0x7F0902EB
+			public const int save_scale_type = 2131297003;
 			
 			// aapt resource value: 0x7F09000D
 			public const int Scale = 2131296269;
 			
-			// aapt resource value: 0x7F0902EB
-			public const int screen = 2131297003;
-			
 			// aapt resource value: 0x7F0902EC
-			public const int scroll = 2131297004;
-			
-			// aapt resource value: 0x7F0902F0
-			public const int scrollable = 2131297008;
+			public const int screen = 2131297004;
 			
 			// aapt resource value: 0x7F0902ED
-			public const int scrollIndicatorDown = 2131297005;
-			
-			// aapt resource value: 0x7F0902EE
-			public const int scrollIndicatorUp = 2131297006;
-			
-			// aapt resource value: 0x7F0902EF
-			public const int scrollView = 2131297007;
+			public const int scroll = 2131297005;
 			
 			// aapt resource value: 0x7F0902F1
-			public const int searchAnim = 2131297009;
+			public const int scrollable = 2131297009;
+			
+			// aapt resource value: 0x7F0902EE
+			public const int scrollIndicatorDown = 2131297006;
+			
+			// aapt resource value: 0x7F0902EF
+			public const int scrollIndicatorUp = 2131297007;
+			
+			// aapt resource value: 0x7F0902F0
+			public const int scrollView = 2131297008;
 			
 			// aapt resource value: 0x7F0902F2
-			public const int searchBtn = 2131297010;
+			public const int searchAnim = 2131297010;
 			
 			// aapt resource value: 0x7F0902F3
-			public const int searchEditTextContainer = 2131297011;
+			public const int searchBtn = 2131297011;
 			
 			// aapt resource value: 0x7F0902F4
-			public const int searchFragment = 2131297012;
+			public const int searchEditTextContainer = 2131297012;
 			
 			// aapt resource value: 0x7F0902F5
-			public const int search_badge = 2131297013;
+			public const int searchFragment = 2131297013;
 			
 			// aapt resource value: 0x7F0902F6
-			public const int search_bar = 2131297014;
+			public const int search_badge = 2131297014;
 			
 			// aapt resource value: 0x7F0902F7
-			public const int search_button = 2131297015;
+			public const int search_bar = 2131297015;
 			
 			// aapt resource value: 0x7F0902F8
-			public const int search_close_btn = 2131297016;
+			public const int search_button = 2131297016;
 			
 			// aapt resource value: 0x7F0902F9
-			public const int search_edit_frame = 2131297017;
+			public const int search_close_btn = 2131297017;
 			
 			// aapt resource value: 0x7F0902FA
-			public const int search_go_btn = 2131297018;
+			public const int search_edit_frame = 2131297018;
 			
 			// aapt resource value: 0x7F0902FB
-			public const int search_mag_icon = 2131297019;
+			public const int search_go_btn = 2131297019;
 			
 			// aapt resource value: 0x7F0902FC
-			public const int search_plate = 2131297020;
+			public const int search_mag_icon = 2131297020;
 			
 			// aapt resource value: 0x7F0902FD
-			public const int search_src_text = 2131297021;
+			public const int search_plate = 2131297021;
 			
 			// aapt resource value: 0x7F0902FE
-			public const int search_voice_btn = 2131297022;
+			public const int search_src_text = 2131297022;
 			
 			// aapt resource value: 0x7F0902FF
-			public const int second = 2131297023;
+			public const int search_voice_btn = 2131297023;
 			
 			// aapt resource value: 0x7F090300
-			public const int select_dialog_listview = 2131297024;
+			public const int second = 2131297024;
 			
 			// aapt resource value: 0x7F090301
-			public const int sendA = 2131297025;
+			public const int select_dialog_listview = 2131297025;
 			
 			// aapt resource value: 0x7F090302
-			public const int sendCustomData = 2131297026;
+			public const int sendA = 2131297026;
 			
 			// aapt resource value: 0x7F090303
-			public const int sendV = 2131297027;
+			public const int sendCustomData = 2131297027;
 			
 			// aapt resource value: 0x7F090304
-			public const int separate_line = 2131297028;
+			public const int sendV = 2131297028;
 			
 			// aapt resource value: 0x7F090305
-			public const int serial_tv = 2131297029;
+			public const int separate_line = 2131297029;
 			
 			// aapt resource value: 0x7F090306
-			public const int seriesNumberEt = 2131297030;
+			public const int serial_tv = 2131297030;
+			
+			// aapt resource value: 0x7F090307
+			public const int seriesNumberEt = 2131297031;
 			
 			// aapt resource value: 0x7F09000A
 			public const int SHIFT = 2131296266;
 			
-			// aapt resource value: 0x7F090307
-			public const int shipin7_logo_lyt = 2131297031;
-			
 			// aapt resource value: 0x7F090308
-			public const int shortcut = 2131297032;
+			public const int shipin7_logo_lyt = 2131297032;
 			
 			// aapt resource value: 0x7F090309
-			public const int show = 2131297033;
+			public const int shortcut = 2131297033;
 			
 			// aapt resource value: 0x7F09030A
-			public const int showCustom = 2131297034;
+			public const int show = 2131297034;
 			
 			// aapt resource value: 0x7F09030B
-			public const int showHome = 2131297035;
+			public const int showCustom = 2131297035;
 			
 			// aapt resource value: 0x7F09030C
-			public const int showTitle = 2131297036;
+			public const int showHome = 2131297036;
 			
 			// aapt resource value: 0x7F09030D
-			public const int sign_et = 2131297037;
+			public const int showTitle = 2131297037;
 			
 			// aapt resource value: 0x7F09030E
-			public const int smallLabel = 2131297038;
+			public const int sign_et = 2131297038;
 			
 			// aapt resource value: 0x7F09030F
-			public const int sms_code_et = 2131297039;
+			public const int smallLabel = 2131297039;
 			
 			// aapt resource value: 0x7F090310
-			public const int sms_code_lyt = 2131297040;
+			public const int sms_code_et = 2131297040;
 			
 			// aapt resource value: 0x7F090311
-			public const int sms_verify_dailog_ly = 2131297041;
+			public const int sms_code_lyt = 2131297041;
 			
 			// aapt resource value: 0x7F090312
-			public const int snackbar_action = 2131297042;
+			public const int sms_verify_dailog_ly = 2131297042;
 			
 			// aapt resource value: 0x7F090313
-			public const int snackbar_text = 2131297043;
+			public const int snackbar_action = 2131297043;
 			
 			// aapt resource value: 0x7F090314
-			public const int snap = 2131297044;
+			public const int snackbar_text = 2131297044;
 			
 			// aapt resource value: 0x7F090315
-			public const int snapshot = 2131297045;
+			public const int snap = 2131297045;
 			
 			// aapt resource value: 0x7F090316
-			public const int sound_line = 2131297046;
-			
-			// aapt resource value: 0x7F090318
-			public const int spacer = 2131297048;
-			
-			// aapt resource value: 0x7F090319
-			public const int split_action_bar = 2131297049;
-			
-			// aapt resource value: 0x7F09031A
-			public const int spread = 2131297050;
-			
-			// aapt resource value: 0x7F09031B
-			public const int spread_inside = 2131297051;
+			public const int snapshot = 2131297046;
 			
 			// aapt resource value: 0x7F090317
-			public const int sp_server_area = 2131297047;
+			public const int sound_line = 2131297047;
+			
+			// aapt resource value: 0x7F090319
+			public const int spacer = 2131297049;
+			
+			// aapt resource value: 0x7F09031A
+			public const int split_action_bar = 2131297050;
+			
+			// aapt resource value: 0x7F09031B
+			public const int spread = 2131297051;
 			
 			// aapt resource value: 0x7F09031C
-			public const int squareColumnItem = 2131297052;
+			public const int spread_inside = 2131297052;
+			
+			// aapt resource value: 0x7F090318
+			public const int sp_server_area = 2131297048;
 			
 			// aapt resource value: 0x7F09031D
-			public const int squareVideo = 2131297053;
+			public const int squareColumnItem = 2131297053;
 			
 			// aapt resource value: 0x7F09031E
-			public const int squareVideoList = 2131297054;
+			public const int squareVideo = 2131297054;
 			
 			// aapt resource value: 0x7F09031F
-			public const int square_channel = 2131297055;
+			public const int squareVideoList = 2131297055;
 			
 			// aapt resource value: 0x7F090320
-			public const int src_atop = 2131297056;
+			public const int square_channel = 2131297056;
 			
 			// aapt resource value: 0x7F090321
-			public const int src_in = 2131297057;
+			public const int src_atop = 2131297057;
 			
 			// aapt resource value: 0x7F090322
-			public const int src_over = 2131297058;
+			public const int src_in = 2131297058;
 			
 			// aapt resource value: 0x7F090323
-			public const int srl_classics_arrow = 2131297059;
+			public const int src_over = 2131297059;
 			
 			// aapt resource value: 0x7F090324
-			public const int srl_classics_center = 2131297060;
+			public const int srl_classics_arrow = 2131297060;
 			
 			// aapt resource value: 0x7F090325
-			public const int srl_classics_progress = 2131297061;
+			public const int srl_classics_center = 2131297061;
 			
 			// aapt resource value: 0x7F090326
-			public const int srl_classics_title = 2131297062;
+			public const int srl_classics_progress = 2131297062;
 			
 			// aapt resource value: 0x7F090327
-			public const int srl_classics_update = 2131297063;
+			public const int srl_classics_title = 2131297063;
 			
 			// aapt resource value: 0x7F090328
-			public const int standard = 2131297064;
+			public const int srl_classics_update = 2131297064;
 			
 			// aapt resource value: 0x7F090329
-			public const int start = 2131297065;
+			public const int standard = 2131297065;
 			
 			// aapt resource value: 0x7F09032A
-			public const int startAVMsg = 2131297066;
+			public const int start = 2131297066;
 			
 			// aapt resource value: 0x7F09032B
-			public const int startDoorKey = 2131297067;
+			public const int startAVMsg = 2131297067;
 			
 			// aapt resource value: 0x7F09032C
-			public const int startLocalRecord = 2131297068;
+			public const int startDoorKey = 2131297068;
 			
 			// aapt resource value: 0x7F09032D
-			public const int startReadCard = 2131297069;
+			public const int startLocalRecord = 2131297069;
 			
 			// aapt resource value: 0x7F09032E
-			public const int startRecord = 2131297070;
+			public const int startReadCard = 2131297070;
 			
 			// aapt resource value: 0x7F09032F
-			public const int startRecordLocalAudio = 2131297071;
+			public const int startRecord = 2131297071;
 			
 			// aapt resource value: 0x7F090330
-			public const int startRecordPeerAudio = 2131297072;
+			public const int startRecordLocalAudio = 2131297072;
 			
 			// aapt resource value: 0x7F090331
-			public const int startStream = 2131297073;
+			public const int startRecordPeerAudio = 2131297073;
 			
 			// aapt resource value: 0x7F090332
-			public const int startWatchDog = 2131297074;
+			public const int startStream = 2131297074;
 			
 			// aapt resource value: 0x7F090333
-			public const int start_stop = 2131297075;
+			public const int startWatchDog = 2131297075;
 			
 			// aapt resource value: 0x7F090334
-			public const int start_stop_stream = 2131297076;
+			public const int start_stop = 2131297076;
 			
 			// aapt resource value: 0x7F090335
-			public const int status = 2131297077;
+			public const int start_stop_stream = 2131297077;
 			
 			// aapt resource value: 0x7F090336
-			public const int status_bar_latest_event_content = 2131297078;
+			public const int status = 2131297078;
 			
 			// aapt resource value: 0x7F090337
-			public const int stopAVMsg = 2131297079;
+			public const int status_bar_latest_event_content = 2131297079;
 			
 			// aapt resource value: 0x7F090338
-			public const int stopDoorKey = 2131297080;
+			public const int stopAVMsg = 2131297080;
 			
 			// aapt resource value: 0x7F090339
-			public const int stopLocalRecord = 2131297081;
+			public const int stopDoorKey = 2131297081;
 			
 			// aapt resource value: 0x7F09033A
-			public const int stopReadCard = 2131297082;
+			public const int stopLocalRecord = 2131297082;
 			
 			// aapt resource value: 0x7F09033B
-			public const int stopRecord = 2131297083;
+			public const int stopReadCard = 2131297083;
 			
 			// aapt resource value: 0x7F09033C
-			public const int stopRecordLocalAudio = 2131297084;
+			public const int stopRecord = 2131297084;
 			
 			// aapt resource value: 0x7F09033D
-			public const int stopRecordPeerAudio = 2131297085;
+			public const int stopRecordLocalAudio = 2131297085;
 			
 			// aapt resource value: 0x7F09033E
-			public const int stopStream = 2131297086;
+			public const int stopRecordPeerAudio = 2131297086;
 			
 			// aapt resource value: 0x7F09033F
-			public const int stopWatchDog = 2131297087;
+			public const int stopStream = 2131297087;
 			
 			// aapt resource value: 0x7F090340
-			public const int storage_layout = 2131297088;
+			public const int stopWatchDog = 2131297088;
 			
 			// aapt resource value: 0x7F090341
-			public const int storage_notice = 2131297089;
+			public const int storage_layout = 2131297089;
+			
+			// aapt resource value: 0x7F090342
+			public const int storage_notice = 2131297090;
 			
 			// aapt resource value: 0x7F09000B
 			public const int STROKE = 2131296267;
 			
-			// aapt resource value: 0x7F090343
-			public const int submenuarrow = 2131297091;
-			
 			// aapt resource value: 0x7F090344
-			public const int submit = 2131297092;
+			public const int submenuarrow = 2131297092;
 			
 			// aapt resource value: 0x7F090345
-			public const int submit_area = 2131297093;
+			public const int submit = 2131297093;
 			
 			// aapt resource value: 0x7F090346
-			public const int subtitle = 2131297094;
-			
-			// aapt resource value: 0x7F090342
-			public const int sub_title_text = 2131297090;
+			public const int submit_area = 2131297094;
 			
 			// aapt resource value: 0x7F090347
-			public const int successIcon = 2131297095;
+			public const int subtitle = 2131297095;
+			
+			// aapt resource value: 0x7F090343
+			public const int sub_title_text = 2131297091;
 			
 			// aapt resource value: 0x7F090348
-			public const int surfaceview = 2131297096;
+			public const int successIcon = 2131297096;
+			
+			// aapt resource value: 0x7F090349
+			public const int surfaceview = 2131297097;
 			
 			// aapt resource value: 0x7F09000C
 			public const int SYM = 2131296268;
 			
-			// aapt resource value: 0x7F090349
-			public const int tabMode = 2131297097;
-			
 			// aapt resource value: 0x7F09034A
-			public const int tab_alarmlist_btn = 2131297098;
+			public const int tabMode = 2131297098;
 			
 			// aapt resource value: 0x7F09034B
-			public const int tab_alarmlist_rl = 2131297099;
+			public const int tab_alarmlist_btn = 2131297099;
 			
 			// aapt resource value: 0x7F09034C
-			public const int tab_devicedefence_btn = 2131297100;
+			public const int tab_alarmlist_rl = 2131297100;
 			
 			// aapt resource value: 0x7F09034D
-			public const int tab_devicedefence_rl = 2131297101;
+			public const int tab_devicedefence_btn = 2131297101;
 			
 			// aapt resource value: 0x7F09034E
-			public const int tab_devicepicture_btn = 2131297102;
+			public const int tab_devicedefence_rl = 2131297102;
 			
 			// aapt resource value: 0x7F09034F
-			public const int tab_devicepicture_rl = 2131297103;
+			public const int tab_devicepicture_btn = 2131297103;
 			
 			// aapt resource value: 0x7F090350
-			public const int tab_devicevideo_btn = 2131297104;
+			public const int tab_devicepicture_rl = 2131297104;
 			
 			// aapt resource value: 0x7F090351
-			public const int tab_devicevideo_rl = 2131297105;
+			public const int tab_devicevideo_btn = 2131297105;
 			
 			// aapt resource value: 0x7F090352
-			public const int tab_remoteplayback_btn = 2131297106;
+			public const int tab_devicevideo_rl = 2131297106;
 			
 			// aapt resource value: 0x7F090353
-			public const int tab_remoteplayback_rl = 2131297107;
+			public const int tab_remoteplayback_btn = 2131297107;
 			
 			// aapt resource value: 0x7F090354
-			public const int tab_setdevice_btn = 2131297108;
+			public const int tab_remoteplayback_rl = 2131297108;
 			
 			// aapt resource value: 0x7F090355
-			public const int tab_setdevice_rl = 2131297109;
+			public const int tab_setdevice_btn = 2131297109;
 			
 			// aapt resource value: 0x7F090356
-			public const int tab_video_talk_btn = 2131297110;
+			public const int tab_setdevice_rl = 2131297110;
 			
 			// aapt resource value: 0x7F090357
-			public const int tab_video_talk_rl = 2131297111;
+			public const int tab_video_talk_btn = 2131297111;
 			
 			// aapt resource value: 0x7F090358
-			public const int tag_key_position = 2131297112;
+			public const int tab_video_talk_rl = 2131297112;
 			
 			// aapt resource value: 0x7F090359
-			public const int talkback_close_btn = 2131297113;
+			public const int tag_key_position = 2131297113;
 			
 			// aapt resource value: 0x7F09035A
-			public const int talkback_control_btn = 2131297114;
+			public const int talkback_close_btn = 2131297114;
 			
 			// aapt resource value: 0x7F09035B
-			public const int talkback_rv = 2131297115;
+			public const int talkback_control_btn = 2131297115;
 			
 			// aapt resource value: 0x7F09035C
-			public const int test = 2131297116;
+			public const int talkback_rv = 2131297116;
 			
 			// aapt resource value: 0x7F09035D
-			public const int testWatchDogReboot = 2131297117;
+			public const int test = 2131297117;
 			
 			// aapt resource value: 0x7F09035E
-			public const int text = 2131297118;
+			public const int testWatchDogReboot = 2131297118;
 			
 			// aapt resource value: 0x7F09035F
-			public const int text1 = 2131297119;
+			public const int text = 2131297119;
 			
 			// aapt resource value: 0x7F090360
-			public const int text2 = 2131297120;
+			public const int text1 = 2131297120;
 			
 			// aapt resource value: 0x7F090361
-			public const int text3 = 2131297121;
-			
-			// aapt resource value: 0x7F09036E
-			public const int textinput_counter = 2131297134;
-			
-			// aapt resource value: 0x7F09036F
-			public const int textinput_error = 2131297135;
+			public const int text2 = 2131297121;
 			
 			// aapt resource value: 0x7F090362
-			public const int textSpacerNoButtons = 2131297122;
+			public const int text3 = 2131297122;
 			
-			// aapt resource value: 0x7F090363
-			public const int textSpacerNoTitle = 2131297123;
+			// aapt resource value: 0x7F09036F
+			public const int textinput_counter = 2131297135;
 			
 			// aapt resource value: 0x7F090370
-			public const int textureView_play = 2131297136;
+			public const int textinput_error = 2131297136;
+			
+			// aapt resource value: 0x7F090363
+			public const int textSpacerNoButtons = 2131297123;
+			
+			// aapt resource value: 0x7F090364
+			public const int textSpacerNoTitle = 2131297124;
 			
 			// aapt resource value: 0x7F090371
-			public const int texture_view_play_window = 2131297137;
+			public const int textureView_play = 2131297137;
+			
+			// aapt resource value: 0x7F090372
+			public const int texture_view_play_window = 2131297138;
 			
 			// aapt resource value: 0x7F09000E
 			public const int TextView01 = 2131296270;
@@ -9355,356 +9358,356 @@
 			// aapt resource value: 0x7F09000F
 			public const int TextView03 = 2131296271;
 			
-			// aapt resource value: 0x7F090365
-			public const int text_camerano = 2131297125;
-			
-			// aapt resource value: 0x7F090364
-			public const int text_camera_name = 2131297124;
-			
 			// aapt resource value: 0x7F090366
-			public const int text_device_ip = 2131297126;
+			public const int text_camerano = 2131297126;
+			
+			// aapt resource value: 0x7F090365
+			public const int text_camera_name = 2131297125;
 			
 			// aapt resource value: 0x7F090367
-			public const int text_input_password_toggle = 2131297127;
+			public const int text_device_ip = 2131297127;
 			
 			// aapt resource value: 0x7F090368
-			public const int text_left = 2131297128;
+			public const int text_input_password_toggle = 2131297128;
 			
 			// aapt resource value: 0x7F090369
-			public const int text_my = 2131297129;
+			public const int text_left = 2131297129;
 			
 			// aapt resource value: 0x7F09036A
-			public const int text_right = 2131297130;
+			public const int text_my = 2131297130;
 			
 			// aapt resource value: 0x7F09036B
-			public const int text_serial = 2131297131;
+			public const int text_right = 2131297131;
 			
 			// aapt resource value: 0x7F09036C
-			public const int text_share = 2131297132;
+			public const int text_serial = 2131297132;
 			
 			// aapt resource value: 0x7F09036D
-			public const int text_title = 2131297133;
+			public const int text_share = 2131297133;
 			
-			// aapt resource value: 0x7F090372
-			public const int time = 2131297138;
-			
-			// aapt resource value: 0x7F090375
-			public const int timeline_image = 2131297141;
-			
-			// aapt resource value: 0x7F090376
-			public const int timepicker = 2131297142;
-			
-			// aapt resource value: 0x7F090377
-			public const int timer = 2131297143;
+			// aapt resource value: 0x7F09036E
+			public const int text_title = 2131297134;
 			
 			// aapt resource value: 0x7F090373
-			public const int time_text = 2131297139;
+			public const int time = 2131297139;
 			
-			// aapt resource value: 0x7F090374
-			public const int time_tv = 2131297140;
+			// aapt resource value: 0x7F090376
+			public const int timeline_image = 2131297142;
+			
+			// aapt resource value: 0x7F090377
+			public const int timepicker = 2131297143;
 			
 			// aapt resource value: 0x7F090378
-			public const int tip = 2131297144;
+			public const int timer = 2131297144;
+			
+			// aapt resource value: 0x7F090374
+			public const int time_text = 2131297140;
+			
+			// aapt resource value: 0x7F090375
+			public const int time_tv = 2131297141;
 			
 			// aapt resource value: 0x7F090379
-			public const int title = 2131297145;
+			public const int tip = 2131297145;
 			
 			// aapt resource value: 0x7F09037A
-			public const int titleBar = 2131297146;
+			public const int title = 2131297146;
 			
 			// aapt resource value: 0x7F09037B
-			public const int titleDividerNoCustom = 2131297147;
+			public const int titleBar = 2131297147;
 			
 			// aapt resource value: 0x7F09037C
-			public const int title_bar = 2131297148;
+			public const int titleDividerNoCustom = 2131297148;
 			
 			// aapt resource value: 0x7F09037D
-			public const int title_bar_landscape = 2131297149;
+			public const int title_bar = 2131297149;
 			
 			// aapt resource value: 0x7F09037E
-			public const int title_bar_portrait = 2131297150;
+			public const int title_bar_landscape = 2131297150;
 			
 			// aapt resource value: 0x7F09037F
-			public const int title_layout = 2131297151;
+			public const int title_bar_portrait = 2131297151;
 			
 			// aapt resource value: 0x7F090380
-			public const int title_left = 2131297152;
+			public const int title_layout = 2131297152;
 			
 			// aapt resource value: 0x7F090381
-			public const int title_right = 2131297153;
+			public const int title_left = 2131297153;
 			
 			// aapt resource value: 0x7F090382
-			public const int title_template = 2131297154;
+			public const int title_right = 2131297154;
 			
 			// aapt resource value: 0x7F090383
-			public const int title_text = 2131297155;
+			public const int title_template = 2131297155;
 			
 			// aapt resource value: 0x7F090384
-			public const int title_text_layout = 2131297156;
+			public const int title_text = 2131297156;
 			
 			// aapt resource value: 0x7F090385
-			public const int top = 2131297157;
-			
-			// aapt resource value: 0x7F090388
-			public const int topbar = 2131297160;
-			
-			// aapt resource value: 0x7F090389
-			public const int topbar_right_img = 2131297161;
+			public const int title_text_layout = 2131297157;
 			
 			// aapt resource value: 0x7F090386
-			public const int topPanel = 2131297158;
+			public const int top = 2131297158;
 			
-			// aapt resource value: 0x7F090387
-			public const int topTip = 2131297159;
+			// aapt resource value: 0x7F090389
+			public const int topbar = 2131297161;
 			
 			// aapt resource value: 0x7F09038A
-			public const int touch_loading_buffer_tv = 2131297162;
+			public const int topbar_right_img = 2131297162;
+			
+			// aapt resource value: 0x7F090387
+			public const int topPanel = 2131297159;
+			
+			// aapt resource value: 0x7F090388
+			public const int topTip = 2131297160;
 			
 			// aapt resource value: 0x7F09038B
-			public const int touch_outside = 2131297163;
+			public const int touch_loading_buffer_tv = 2131297163;
 			
 			// aapt resource value: 0x7F09038C
-			public const int touch_progress_layout = 2131297164;
+			public const int touch_outside = 2131297164;
 			
 			// aapt resource value: 0x7F09038D
-			public const int transition_current_scene = 2131297165;
+			public const int touch_progress_layout = 2131297165;
 			
 			// aapt resource value: 0x7F09038E
-			public const int transition_layout_save = 2131297166;
+			public const int transition_current_scene = 2131297166;
 			
 			// aapt resource value: 0x7F09038F
-			public const int transition_position = 2131297167;
+			public const int transition_layout_save = 2131297167;
 			
 			// aapt resource value: 0x7F090390
-			public const int transition_scene_layoutid_cache = 2131297168;
+			public const int transition_position = 2131297168;
 			
 			// aapt resource value: 0x7F090391
-			public const int transition_transform = 2131297169;
+			public const int transition_scene_layoutid_cache = 2131297169;
+			
+			// aapt resource value: 0x7F090392
+			public const int transition_transform = 2131297170;
 			
 			// aapt resource value: 0x7F090010
 			public const int Translate = 2131296272;
 			
-			// aapt resource value: 0x7F090392
-			public const int tvDeviceWifiConfigTip = 2131297170;
-			
 			// aapt resource value: 0x7F090393
-			public const int tvIntroduce1 = 2131297171;
+			public const int tvDeviceWifiConfigTip = 2131297171;
 			
 			// aapt resource value: 0x7F090394
-			public const int tvIntroduce2 = 2131297172;
+			public const int tvIntroduce1 = 2131297172;
 			
 			// aapt resource value: 0x7F090395
-			public const int tvMore = 2131297173;
+			public const int tvIntroduce2 = 2131297173;
 			
 			// aapt resource value: 0x7F090396
-			public const int tvSSID = 2131297174;
+			public const int tvMore = 2131297174;
 			
 			// aapt resource value: 0x7F090397
-			public const int tvStatus = 2131297175;
+			public const int tvSSID = 2131297175;
 			
 			// aapt resource value: 0x7F090398
-			public const int tvSuccess = 2131297176;
+			public const int tvStatus = 2131297176;
 			
 			// aapt resource value: 0x7F090399
-			public const int tvTip = 2131297177;
+			public const int tvSuccess = 2131297177;
 			
 			// aapt resource value: 0x7F09039A
-			public const int tvTitle = 2131297178;
+			public const int tvTip = 2131297178;
 			
 			// aapt resource value: 0x7F09039B
-			public const int tv_adding_to_account = 2131297179;
+			public const int tvTitle = 2131297179;
 			
 			// aapt resource value: 0x7F09039C
-			public const int tv_camera_name = 2131297180;
+			public const int tv_adding_to_account = 2131297180;
 			
 			// aapt resource value: 0x7F09039D
-			public const int tv_connecting_to_device = 2131297181;
+			public const int tv_camera_name = 2131297181;
 			
 			// aapt resource value: 0x7F09039E
-			public const int tv_content = 2131297182;
+			public const int tv_connecting_to_device = 2131297182;
 			
 			// aapt resource value: 0x7F09039F
-			public const int tv_decode_type = 2131297183;
+			public const int tv_content = 2131297183;
 			
 			// aapt resource value: 0x7F0903A0
-			public const int tv_ezviz_account_login = 2131297184;
+			public const int tv_decode_type = 2131297184;
 			
 			// aapt resource value: 0x7F0903A1
-			public const int tv_file_path = 2131297185;
+			public const int tv_ezviz_account_login = 2131297185;
 			
 			// aapt resource value: 0x7F0903A2
-			public const int tv_ok = 2131297186;
+			public const int tv_file_path = 2131297186;
 			
 			// aapt resource value: 0x7F0903A3
-			public const int tv_play_error = 2131297187;
+			public const int tv_ok = 2131297187;
 			
 			// aapt resource value: 0x7F0903A4
-			public const int tv_pwd = 2131297188;
+			public const int tv_play_error = 2131297188;
 			
 			// aapt resource value: 0x7F0903A5
-			public const int tv_registering_to_platform = 2131297189;
+			public const int tv_pwd = 2131297189;
 			
 			// aapt resource value: 0x7F0903A6
-			public const int tv_sdk_ver = 2131297190;
+			public const int tv_registering_to_platform = 2131297190;
 			
 			// aapt resource value: 0x7F0903A7
-			public const int tv_ssid = 2131297191;
+			public const int tv_sdk_ver = 2131297191;
 			
 			// aapt resource value: 0x7F0903A8
-			public const int tv_stream_type = 2131297192;
+			public const int tv_ssid = 2131297192;
 			
 			// aapt resource value: 0x7F0903A9
-			public const int tv_tip = 2131297193;
+			public const int tv_stream_type = 2131297193;
 			
 			// aapt resource value: 0x7F0903AA
-			public const int tv_title = 2131297194;
+			public const int tv_tip = 2131297194;
 			
 			// aapt resource value: 0x7F0903AB
-			public const int tv_zxing_back = 2131297195;
+			public const int tv_title = 2131297195;
 			
 			// aapt resource value: 0x7F0903AC
-			public const int tv_zxing_flash = 2131297196;
+			public const int tv_zxing_back = 2131297196;
 			
 			// aapt resource value: 0x7F0903AD
-			public const int tv_zxing_scan = 2131297197;
+			public const int tv_zxing_flash = 2131297197;
 			
 			// aapt resource value: 0x7F0903AE
-			public const int txtResult = 2131297198;
+			public const int tv_zxing_scan = 2131297198;
 			
 			// aapt resource value: 0x7F0903AF
-			public const int unbind_button = 2131297199;
+			public const int txtResult = 2131297199;
 			
 			// aapt resource value: 0x7F0903B0
-			public const int uniform = 2131297200;
+			public const int unbind_button = 2131297200;
 			
 			// aapt resource value: 0x7F0903B1
-			public const int up = 2131297201;
+			public const int uniform = 2131297201;
 			
 			// aapt resource value: 0x7F0903B2
-			public const int useLogo = 2131297202;
+			public const int up = 2131297202;
 			
 			// aapt resource value: 0x7F0903B3
-			public const int userid_et = 2131297203;
+			public const int useLogo = 2131297203;
 			
 			// aapt resource value: 0x7F0903B4
-			public const int userid_lyt = 2131297204;
+			public const int userid_et = 2131297204;
 			
 			// aapt resource value: 0x7F0903B5
-			public const int uvc = 2131297205;
+			public const int userid_lyt = 2131297205;
 			
 			// aapt resource value: 0x7F0903B6
-			public const int verifycodeEditTextContainer = 2131297206;
+			public const int uvc = 2131297206;
 			
 			// aapt resource value: 0x7F0903B7
-			public const int verifycodeEt = 2131297207;
+			public const int verifycodeEditTextContainer = 2131297207;
 			
 			// aapt resource value: 0x7F0903B8
-			public const int version = 2131297208;
+			public const int verifycodeEt = 2131297208;
 			
 			// aapt resource value: 0x7F0903B9
-			public const int version_arrow = 2131297209;
+			public const int version = 2131297209;
 			
 			// aapt resource value: 0x7F0903BA
-			public const int version_layout = 2131297210;
+			public const int version_arrow = 2131297210;
 			
 			// aapt resource value: 0x7F0903BB
-			public const int version_newest = 2131297211;
+			public const int version_layout = 2131297211;
 			
 			// aapt resource value: 0x7F0903BC
-			public const int version_notice = 2131297212;
+			public const int version_newest = 2131297212;
 			
 			// aapt resource value: 0x7F0903BD
-			public const int vertical = 2131297213;
+			public const int version_notice = 2131297213;
 			
 			// aapt resource value: 0x7F0903BE
-			public const int vg_child_watch_video_talk_camera = 2131297214;
+			public const int vertical = 2131297214;
 			
 			// aapt resource value: 0x7F0903BF
-			public const int vg_child_watch_video_talk_player = 2131297215;
+			public const int vg_child_watch_video_talk_camera = 2131297215;
 			
 			// aapt resource value: 0x7F0903C0
-			public const int vg_child_watch_video_talk_video_container = 2131297216;
+			public const int vg_child_watch_video_talk_player = 2131297216;
 			
 			// aapt resource value: 0x7F0903C1
-			public const int vg_error_tips = 2131297217;
+			public const int vg_child_watch_video_talk_video_container = 2131297217;
 			
 			// aapt resource value: 0x7F0903C2
-			public const int vg_login_anim = 2131297218;
+			public const int vg_error_tips = 2131297218;
 			
 			// aapt resource value: 0x7F0903C3
-			public const int vg_notification_operation_tool_container = 2131297219;
+			public const int vg_login_anim = 2131297219;
 			
 			// aapt resource value: 0x7F0903C4
-			public const int vg_play_info = 2131297220;
+			public const int vg_notification_operation_tool_container = 2131297220;
 			
 			// aapt resource value: 0x7F0903C5
-			public const int vg_play_window = 2131297221;
+			public const int vg_play_info = 2131297221;
 			
 			// aapt resource value: 0x7F0903C6
-			public const int videoBackImg = 2131297222;
+			public const int vg_play_window = 2131297222;
 			
 			// aapt resource value: 0x7F0903C7
-			public const int videoParent = 2131297223;
+			public const int videoBackImg = 2131297223;
 			
 			// aapt resource value: 0x7F0903C8
-			public const int videoTitle = 2131297224;
+			public const int videoParent = 2131297224;
 			
 			// aapt resource value: 0x7F0903C9
-			public const int video_button = 2131297225;
+			public const int videoTitle = 2131297225;
 			
 			// aapt resource value: 0x7F0903CA
-			public const int video_talk_et_room_id = 2131297226;
-			
-			// aapt resource value: 0x7F0903CF
-			public const int viewedCount = 2131297231;
-			
-			// aapt resource value: 0x7F0903D0
-			public const int viewfinder_view = 2131297232;
+			public const int video_button = 2131297226;
 			
 			// aapt resource value: 0x7F0903CB
-			public const int viewSort = 2131297227;
+			public const int video_talk_et_room_id = 2131297227;
 			
-			// aapt resource value: 0x7F0903CC
-			public const int view_child_watch_video_talk_camera = 2131297228;
-			
-			// aapt resource value: 0x7F0903CD
-			public const int view_child_watch_video_talk_player = 2131297229;
-			
-			// aapt resource value: 0x7F0903CE
-			public const int view_offset_helper = 2131297230;
+			// aapt resource value: 0x7F0903D0
+			public const int viewedCount = 2131297232;
 			
 			// aapt resource value: 0x7F0903D1
-			public const int visible = 2131297233;
+			public const int viewfinder_view = 2131297233;
+			
+			// aapt resource value: 0x7F0903CC
+			public const int viewSort = 2131297228;
+			
+			// aapt resource value: 0x7F0903CD
+			public const int view_child_watch_video_talk_camera = 2131297229;
+			
+			// aapt resource value: 0x7F0903CE
+			public const int view_child_watch_video_talk_player = 2131297230;
+			
+			// aapt resource value: 0x7F0903CF
+			public const int view_offset_helper = 2131297231;
 			
 			// aapt resource value: 0x7F0903D2
-			public const int wait_bar = 2131297234;
+			public const int visible = 2131297234;
 			
 			// aapt resource value: 0x7F0903D3
-			public const int wait_tv = 2131297235;
+			public const int wait_bar = 2131297235;
 			
 			// aapt resource value: 0x7F0903D4
-			public const int watting_pb = 2131297236;
-			
-			// aapt resource value: 0x7F0903D6
-			public const int webview = 2131297238;
+			public const int wait_tv = 2131297236;
 			
 			// aapt resource value: 0x7F0903D5
-			public const int web_login_btn = 2131297237;
+			public const int watting_pb = 2131297237;
 			
 			// aapt resource value: 0x7F0903D7
-			public const int wifi_tv = 2131297239;
+			public const int webview = 2131297239;
+			
+			// aapt resource value: 0x7F0903D6
+			public const int web_login_btn = 2131297238;
 			
 			// aapt resource value: 0x7F0903D8
-			public const int withText = 2131297240;
+			public const int wifi_tv = 2131297240;
 			
 			// aapt resource value: 0x7F0903D9
-			public const int wrap = 2131297241;
+			public const int withText = 2131297241;
 			
 			// aapt resource value: 0x7F0903DA
-			public const int wrap_content = 2131297242;
+			public const int wrap = 2131297242;
 			
 			// aapt resource value: 0x7F0903DB
-			public const int year = 2131297243;
+			public const int wrap_content = 2131297243;
+			
+			// aapt resource value: 0x7F0903DC
+			public const int year = 2131297244;
 			
 			static Id()
 			{
@@ -12271,227 +12274,233 @@
 			// aapt resource value: 0x7F0F0256
 			public const int talk = 2131690070;
 			
+			// aapt resource value: 0x7F0F0259
+			public const int talking = 2131690073;
+			
 			// aapt resource value: 0x7F0F0257
-			public const int talking = 2131690071;
+			public const int talk_open_failed = 2131690071;
 			
 			// aapt resource value: 0x7F0F0258
-			public const int tip_heard_voice = 2131690072;
-			
-			// aapt resource value: 0x7F0F0259
-			public const int tip_login_out = 2131690073;
+			public const int talk_open_success = 2131690072;
 			
 			// aapt resource value: 0x7F0F025A
-			public const int tip_of_added_by_yourself_and_online = 2131690074;
+			public const int tip_heard_voice = 2131690074;
 			
 			// aapt resource value: 0x7F0F025B
-			public const int tip_of_bad_net = 2131690075;
+			public const int tip_login_out = 2131690075;
 			
 			// aapt resource value: 0x7F0F025C
-			public const int tip_playback_again = 2131690076;
+			public const int tip_of_added_by_yourself_and_online = 2131690076;
 			
 			// aapt resource value: 0x7F0F025D
-			public const int tip_specified_device = 2131690077;
+			public const int tip_of_bad_net = 2131690077;
 			
 			// aapt resource value: 0x7F0F025E
-			public const int title_activate_device = 2131690078;
+			public const int tip_playback_again = 2131690078;
 			
 			// aapt resource value: 0x7F0F025F
-			public const int title_activate_device_fail = 2131690079;
+			public const int tip_specified_device = 2131690079;
 			
 			// aapt resource value: 0x7F0F0260
-			public const int title_activity_connect_device_wifi = 2131690080;
+			public const int title_activate_device = 2131690080;
 			
 			// aapt resource value: 0x7F0F0261
-			public const int title_activity_ezupgrade_device = 2131690081;
+			public const int title_activate_device_fail = 2131690081;
 			
 			// aapt resource value: 0x7F0F0262
-			public const int today = 2131690082;
+			public const int title_activity_connect_device_wifi = 2131690082;
 			
 			// aapt resource value: 0x7F0F0263
-			public const int touch_fingerprint_sensor_hint = 2131690083;
+			public const int title_activity_ezupgrade_device = 2131690083;
 			
 			// aapt resource value: 0x7F0F0264
-			public const int touch_to_load = 2131690084;
+			public const int today = 2131690084;
 			
 			// aapt resource value: 0x7F0F0265
-			public const int try_again = 2131690085;
+			public const int touch_fingerprint_sensor_hint = 2131690085;
 			
 			// aapt resource value: 0x7F0F0266
-			public const int ui_call_demo_txt = 2131690086;
+			public const int touch_to_load = 2131690086;
 			
 			// aapt resource value: 0x7F0F0267
-			public const int unable_identify_two_dimensional_code_tip = 2131690087;
+			public const int try_again = 2131690087;
 			
 			// aapt resource value: 0x7F0F0268
-			public const int unbind_to_bind = 2131690088;
+			public const int ui_call_demo_txt = 2131690088;
 			
 			// aapt resource value: 0x7F0F0269
-			public const int unknow_ssid = 2131690089;
+			public const int unable_identify_two_dimensional_code_tip = 2131690089;
 			
 			// aapt resource value: 0x7F0F026A
-			public const int unlock_success = 2131690090;
+			public const int unbind_to_bind = 2131690090;
 			
 			// aapt resource value: 0x7F0F026B
-			public const int unnamed = 2131690091;
+			public const int unknow_ssid = 2131690091;
 			
 			// aapt resource value: 0x7F0F026C
-			public const int update_exit = 2131690092;
+			public const int unlock_success = 2131690092;
 			
 			// aapt resource value: 0x7F0F026D
-			public const int upgrade = 2131690093;
+			public const int unnamed = 2131690093;
 			
 			// aapt resource value: 0x7F0F026E
-			public const int upgrade_fail = 2131690094;
+			public const int update_exit = 2131690094;
 			
 			// aapt resource value: 0x7F0F026F
-			public const int upgrade_progress = 2131690095;
+			public const int upgrade = 2131690095;
 			
 			// aapt resource value: 0x7F0F0270
-			public const int upgrade_success = 2131690096;
+			public const int upgrade_fail = 2131690096;
 			
 			// aapt resource value: 0x7F0F0271
-			public const int upgrade_success_progress = 2131690097;
+			public const int upgrade_progress = 2131690097;
 			
 			// aapt resource value: 0x7F0F0272
-			public const int user_name_txt = 2131690098;
+			public const int upgrade_success = 2131690098;
 			
 			// aapt resource value: 0x7F0F0273
-			public const int verify_code_error = 2131690099;
+			public const int upgrade_success_progress = 2131690099;
 			
 			// aapt resource value: 0x7F0F0274
-			public const int verify_sms_code_fail = 2131690100;
+			public const int user_name_txt = 2131690100;
 			
 			// aapt resource value: 0x7F0F0275
-			public const int verify_sms_code_success = 2131690101;
+			public const int verify_code_error = 2131690101;
 			
 			// aapt resource value: 0x7F0F0276
-			public const int version_newest = 2131690102;
+			public const int verify_sms_code_fail = 2131690102;
 			
 			// aapt resource value: 0x7F0F0277
-			public const int video_answer = 2131690103;
+			public const int verify_sms_code_success = 2131690103;
 			
 			// aapt resource value: 0x7F0F0278
-			public const int video_box = 2131690104;
+			public const int version_newest = 2131690104;
 			
 			// aapt resource value: 0x7F0F0279
-			public const int video_confirm = 2131690105;
+			public const int video_answer = 2131690105;
 			
 			// aapt resource value: 0x7F0F027A
-			public const int video_device = 2131690106;
+			public const int video_box = 2131690106;
 			
 			// aapt resource value: 0x7F0F027B
-			public const int video_fail = 2131690107;
+			public const int video_confirm = 2131690107;
 			
 			// aapt resource value: 0x7F0F027C
-			public const int video_hang_up = 2131690108;
+			public const int video_device = 2131690108;
 			
 			// aapt resource value: 0x7F0F027D
-			public const int video_icon = 2131690109;
+			public const int video_fail = 2131690109;
 			
 			// aapt resource value: 0x7F0F027E
-			public const int video_not_answer = 2131690110;
+			public const int video_hang_up = 2131690110;
 			
 			// aapt resource value: 0x7F0F027F
-			public const int video_screenshot = 2131690111;
+			public const int video_icon = 2131690111;
 			
 			// aapt resource value: 0x7F0F0280
-			public const int video_square = 2131690112;
+			public const int video_not_answer = 2131690112;
 			
 			// aapt resource value: 0x7F0F0281
-			public const int video_success = 2131690113;
+			public const int video_screenshot = 2131690113;
 			
 			// aapt resource value: 0x7F0F0282
-			public const int video_talk_call_cancel = 2131690114;
+			public const int video_square = 2131690114;
 			
 			// aapt resource value: 0x7F0F0283
-			public const int video_talk_call_is_accepted = 2131690115;
+			public const int video_success = 2131690115;
 			
 			// aapt resource value: 0x7F0F0284
-			public const int video_talk_is_playing = 2131690116;
+			public const int video_talk_call_cancel = 2131690116;
 			
 			// aapt resource value: 0x7F0F0285
-			public const int video_talk_sdk_toast_hang_up = 2131690117;
+			public const int video_talk_call_is_accepted = 2131690117;
 			
 			// aapt resource value: 0x7F0F0286
-			public const int video_talk_sdk_toast_nobody = 2131690118;
+			public const int video_talk_is_playing = 2131690118;
 			
 			// aapt resource value: 0x7F0F0287
-			public const int video_talk_signal_weak = 2131690119;
+			public const int video_talk_sdk_toast_hang_up = 2131690119;
 			
 			// aapt resource value: 0x7F0F0288
-			public const int video_talk_watch_is_busy = 2131690120;
+			public const int video_talk_sdk_toast_nobody = 2131690120;
 			
 			// aapt resource value: 0x7F0F0289
-			public const int video_talk_watch_temperature_high_hang = 2131690121;
+			public const int video_talk_signal_weak = 2131690121;
 			
 			// aapt resource value: 0x7F0F028A
-			public const int video_talk_watch_temperature_high_hint = 2131690122;
+			public const int video_talk_watch_is_busy = 2131690122;
 			
 			// aapt resource value: 0x7F0F028B
-			public const int video_talk_watch_temperature_high_reject = 2131690123;
+			public const int video_talk_watch_temperature_high_hang = 2131690123;
 			
 			// aapt resource value: 0x7F0F028C
-			public const int video_talk_watch_temperature_high_warn = 2131690124;
+			public const int video_talk_watch_temperature_high_hint = 2131690124;
 			
 			// aapt resource value: 0x7F0F028D
-			public const int video_tip = 2131690125;
+			public const int video_talk_watch_temperature_high_reject = 2131690125;
 			
 			// aapt resource value: 0x7F0F028E
-			public const int video_unlock = 2131690126;
+			public const int video_talk_watch_temperature_high_warn = 2131690126;
 			
 			// aapt resource value: 0x7F0F028F
-			public const int wait = 2131690127;
+			public const int video_tip = 2131690127;
 			
 			// aapt resource value: 0x7F0F0290
-			public const int web_login_button_txt = 2131690128;
+			public const int video_unlock = 2131690128;
 			
 			// aapt resource value: 0x7F0F0291
-			public const int wechat_interconnect = 2131690129;
+			public const int wait = 2131690129;
 			
 			// aapt resource value: 0x7F0F0292
-			public const int wifi_connected = 2131690130;
+			public const int web_login_button_txt = 2131690130;
 			
 			// aapt resource value: 0x7F0F0293
-			public const int wifi_connection_finish_need_refresh = 2131690131;
+			public const int wechat_interconnect = 2131690131;
 			
 			// aapt resource value: 0x7F0F0294
-			public const int wifi_set = 2131690132;
+			public const int wifi_connected = 2131690132;
 			
 			// aapt resource value: 0x7F0F0295
-			public const int wifi_setting = 2131690133;
+			public const int wifi_connection_finish_need_refresh = 2131690133;
 			
 			// aapt resource value: 0x7F0F0296
-			public const int wired_connection = 2131690134;
-			
-			// aapt resource value: 0x7F0F0298
-			public const int xlistview_footer_hint_normal = 2131690136;
+			public const int wifi_set = 2131690134;
 			
 			// aapt resource value: 0x7F0F0297
-			public const int xlistview_footer_hint_no_more_device = 2131690135;
+			public const int wifi_setting = 2131690135;
 			
-			// aapt resource value: 0x7F0F0299
-			public const int xlistview_footer_hint_ready = 2131690137;
+			// aapt resource value: 0x7F0F0298
+			public const int wired_connection = 2131690136;
 			
 			// aapt resource value: 0x7F0F029A
-			public const int xlistview_footer_no_more = 2131690138;
+			public const int xlistview_footer_hint_normal = 2131690138;
+			
+			// aapt resource value: 0x7F0F0299
+			public const int xlistview_footer_hint_no_more_device = 2131690137;
 			
 			// aapt resource value: 0x7F0F029B
-			public const int xlistview_footer_no_more_msg = 2131690139;
+			public const int xlistview_footer_hint_ready = 2131690139;
 			
 			// aapt resource value: 0x7F0F029C
-			public const int xlistview_header_hint_loading = 2131690140;
+			public const int xlistview_footer_no_more = 2131690140;
 			
 			// aapt resource value: 0x7F0F029D
-			public const int xlistview_header_hint_more = 2131690141;
+			public const int xlistview_footer_no_more_msg = 2131690141;
 			
 			// aapt resource value: 0x7F0F029E
-			public const int xlistview_header_hint_normal = 2131690142;
+			public const int xlistview_header_hint_loading = 2131690142;
 			
 			// aapt resource value: 0x7F0F029F
-			public const int xlistview_header_hint_ready = 2131690143;
+			public const int xlistview_header_hint_more = 2131690143;
 			
 			// aapt resource value: 0x7F0F02A0
-			public const int xlistview_header_last_time = 2131690144;
+			public const int xlistview_header_hint_normal = 2131690144;
+			
+			// aapt resource value: 0x7F0F02A1
+			public const int xlistview_header_hint_ready = 2131690145;
+			
+			// aapt resource value: 0x7F0F02A2
+			public const int xlistview_header_last_time = 2131690146;
 			
 			static String()
 			{
diff --git a/HDL-ON_Android/Resources/layout/activity_video_phone.xml b/HDL-ON_Android/Resources/layout/activity_video_phone.xml
index e5116dd..2c9e2b4 100644
--- a/HDL-ON_Android/Resources/layout/activity_video_phone.xml
+++ b/HDL-ON_Android/Resources/layout/activity_video_phone.xml
@@ -30,7 +30,8 @@
 			android:text="@string/video_device"/>
 	</RelativeLayout>
 
-	<LinearLayout
+	<FrameLayout
+		android:id="@+id/live_window"
 		android:layout_width="match_parent"
 		android:layout_height="0dp"
 		android:layout_weight="210"
@@ -48,7 +49,7 @@
 			android:layout_width="match_parent"
 			android:layout_height="match_parent"/>
 
-	</LinearLayout>
+	</FrameLayout>
 
 	<LinearLayout
 		android:layout_width="match_parent"
diff --git a/HDL-ON_Android/Resources/values-zh/strings.xml b/HDL-ON_Android/Resources/values-zh/strings.xml
index 9a13152..4636041 100644
--- a/HDL-ON_Android/Resources/values-zh/strings.xml
+++ b/HDL-ON_Android/Resources/values-zh/strings.xml
@@ -18,4 +18,6 @@
 	<string name="on_the_phone">閫氳瘽涓�...</string>
 	<string name="unlock_success">寮�閿佹垚鍔�</string>
 	<string name="screenshot_success">鎴浘鎴愬姛</string>
+	<string name="talk_open_success">瀵硅寮�濮�</string>
+	<string name="talk_open_failed">瀵硅鎵撳紑澶辫触</string>
 </resources>
\ No newline at end of file
diff --git a/HDL-ON_Android/Resources/values/strings.xml b/HDL-ON_Android/Resources/values/strings.xml
index 00d8ad7..948af94 100644
--- a/HDL-ON_Android/Resources/values/strings.xml
+++ b/HDL-ON_Android/Resources/values/strings.xml
@@ -17,5 +17,7 @@
         <string name="on_the_phone">On the phone</string>
         <string name="unlock_success">Unlock successfully</string>
         <string name="screenshot_success">Screenshot successfully</string>
+    <string name="talk_open_success">Intercom Begin</string>
+    <string name="talk_open_failed">Intercom failed to open</string>
 
 </resources>
\ No newline at end of file
diff --git a/HDL-ON_Android/libs/armeabi-v7a/libGMCrypto.so b/HDL-ON_Android/libs/armeabi-v7a/libGMCrypto.so
new file mode 100644
index 0000000..426d9a0
--- /dev/null
+++ b/HDL-ON_Android/libs/armeabi-v7a/libGMCrypto.so
Binary files differ
diff --git a/HDL-ON_Android/libs/armeabi-v7a/libLCOpenApiClient.so b/HDL-ON_Android/libs/armeabi-v7a/libLCOpenApiClient.so
new file mode 100644
index 0000000..1c970f7
--- /dev/null
+++ b/HDL-ON_Android/libs/armeabi-v7a/libLCOpenApiClient.so
Binary files differ
diff --git a/HDL-ON_Android/libs/armeabi-v7a/libLechangeSDK.so b/HDL-ON_Android/libs/armeabi-v7a/libLechangeSDK.so
new file mode 100644
index 0000000..29b0cd2
--- /dev/null
+++ b/HDL-ON_Android/libs/armeabi-v7a/libLechangeSDK.so
Binary files differ
diff --git a/HDL-ON_Android/libs/armeabi-v7a/libSmartConfig.so b/HDL-ON_Android/libs/armeabi-v7a/libSmartConfig.so
new file mode 100644
index 0000000..4f557b3
--- /dev/null
+++ b/HDL-ON_Android/libs/armeabi-v7a/libSmartConfig.so
Binary files differ
diff --git a/HDL-ON_Android/libs/armeabi-v7a/libSoftAPConfig.so b/HDL-ON_Android/libs/armeabi-v7a/libSoftAPConfig.so
new file mode 100644
index 0000000..bb7fb84
--- /dev/null
+++ b/HDL-ON_Android/libs/armeabi-v7a/libSoftAPConfig.so
Binary files differ
diff --git a/HDL-ON_Android/libs/armeabi-v7a/libconfigsdk.so b/HDL-ON_Android/libs/armeabi-v7a/libconfigsdk.so
new file mode 100644
index 0000000..e786702
--- /dev/null
+++ b/HDL-ON_Android/libs/armeabi-v7a/libconfigsdk.so
Binary files differ
diff --git a/HDL-ON_Android/libs/armeabi-v7a/libgnustl_shared.so b/HDL-ON_Android/libs/armeabi-v7a/libgnustl_shared.so
new file mode 100644
index 0000000..ab79e66
--- /dev/null
+++ b/HDL-ON_Android/libs/armeabi-v7a/libgnustl_shared.so
Binary files differ
diff --git a/HDL-ON_Android/libs/armeabi-v7a/libjninetsdk.so b/HDL-ON_Android/libs/armeabi-v7a/libjninetsdk.so
new file mode 100644
index 0000000..ee4b507
--- /dev/null
+++ b/HDL-ON_Android/libs/armeabi-v7a/libjninetsdk.so
Binary files differ
diff --git a/HDL-ON_Android/libs/armeabi-v7a/libnetsdk.so b/HDL-ON_Android/libs/armeabi-v7a/libnetsdk.so
new file mode 100644
index 0000000..7c759a1
--- /dev/null
+++ b/HDL-ON_Android/libs/armeabi-v7a/libnetsdk.so
Binary files differ
diff --git a/HDL-ON_iOS/HDL-ON_iOS.csproj b/HDL-ON_iOS/HDL-ON_iOS.csproj
index 0dff2f0..6d7a729 100644
--- a/HDL-ON_iOS/HDL-ON_iOS.csproj
+++ b/HDL-ON_iOS/HDL-ON_iOS.csproj
@@ -92,12 +92,15 @@
         <Reference Include="EZSDK.IOS">
           <HintPath>..\DLL\IOS\EZSDK.IOS.dll</HintPath>
         </Reference>
-        <Reference Include="Shared.IOS.ESVideoOnSDK">
-          <HintPath>..\DLL\FL\iOS\Shared.IOS.ESVideoOnSDK.dll</HintPath>
-        </Reference>
         <Reference Include="Shared.IOS">
           <HintPath>..\DLL\Shared.IOS.dll</HintPath>
         </Reference>
+        <Reference Include="Shared.IOS.LCVideoOnSDK">
+          <HintPath>..\..\LCOpenSDK_iOS\iOS\Xamarin\Shared.IOS.LCVideoOnSDK\Shared.IOS.LCVideoOnSDK\bin\Release\Shared.IOS.LCVideoOnSDK.dll</HintPath>
+        </Reference>
+        <Reference Include="Shared.IOS.ESVideoOnSDK">
+          <HintPath>..\DLL\FL\iOS\Shared.IOS.ESVideoOnSDK.dll</HintPath>
+        </Reference>
     </ItemGroup>
     <ItemGroup>
       <PackageReference Include="Newtonsoft.Json">
diff --git a/HDL_APP_Project.sln b/HDL_APP_Project.sln
index 6e5610f..2c65910 100644
--- a/HDL_APP_Project.sln
+++ b/HDL_APP_Project.sln
@@ -9,6 +9,8 @@
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Blufi", "HdlBluWi\Blufi.csproj", "{2DDF4C3C-6998-432E-9F43-6786D82F0630}"
 EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Shared.IOS.LCVideoOnSDK", "..\LCOpenSDK_iOS\iOS\Xamarin\Shared.IOS.LCVideoOnSDK\Shared.IOS.LCVideoOnSDK\Shared.IOS.LCVideoOnSDK.csproj", "{D78A9ED7-34A3-416F-B645-7475E2E2DE93}"
+EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug|Any CPU = Debug|Any CPU
@@ -55,5 +57,17 @@
 		{2DDF4C3C-6998-432E-9F43-6786D82F0630}.Debug|iPhone.Build.0 = Debug|Any CPU
 		{2DDF4C3C-6998-432E-9F43-6786D82F0630}.Release|iPhone.ActiveCfg = Release|Any CPU
 		{2DDF4C3C-6998-432E-9F43-6786D82F0630}.Release|iPhone.Build.0 = Release|Any CPU
+		{D78A9ED7-34A3-416F-B645-7475E2E2DE93}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{D78A9ED7-34A3-416F-B645-7475E2E2DE93}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{D78A9ED7-34A3-416F-B645-7475E2E2DE93}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{D78A9ED7-34A3-416F-B645-7475E2E2DE93}.Release|Any CPU.Build.0 = Release|Any CPU
+		{D78A9ED7-34A3-416F-B645-7475E2E2DE93}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+		{D78A9ED7-34A3-416F-B645-7475E2E2DE93}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+		{D78A9ED7-34A3-416F-B645-7475E2E2DE93}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+		{D78A9ED7-34A3-416F-B645-7475E2E2DE93}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+		{D78A9ED7-34A3-416F-B645-7475E2E2DE93}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+		{D78A9ED7-34A3-416F-B645-7475E2E2DE93}.Debug|iPhone.Build.0 = Debug|Any CPU
+		{D78A9ED7-34A3-416F-B645-7475E2E2DE93}.Release|iPhone.ActiveCfg = Release|Any CPU
+		{D78A9ED7-34A3-416F-B645-7475E2E2DE93}.Release|iPhone.Build.0 = Release|Any CPU
 	EndGlobalSection
 EndGlobal
diff --git a/HDL_ON/Common/ApiUtlis.cs b/HDL_ON/Common/ApiUtlis.cs
index 50dee7c..31d4229 100644
--- a/HDL_ON/Common/ApiUtlis.cs
+++ b/HDL_ON/Common/ApiUtlis.cs
@@ -4,6 +4,8 @@
 using HDL_ON.DAL;
 using HDL_ON.DAL.Server;
 using HDL_ON.Entity;
+using HDL_ON.UI.UI2.FuntionControlView.Video;
+using Newtonsoft.Json;
 using Shared;
 
 namespace HDL_ON.Common
@@ -106,6 +108,26 @@
                 }
                 endTime = DateTime.Now.AddSeconds(5);
                 MainPage.Log($"鍒锋柊涓汉淇℃伅鎴愬姛");
+
+                //int count = 0;
+                //while (count < 10)
+                //{
+                //    if (DB_ResidenceData.Instance.CheckWhetherGatewayIdIsNull())
+                //    {
+                //        System.Threading.Thread.Sleep(200);
+                //    }
+                //    else
+                //    {
+                //        break;
+                //    }
+                //    count++;
+                //}
+                //if (DB_ResidenceData.Instance.CheckWhetherGatewayIdIsNull())
+                //{
+                //    return;
+                //}
+
+
                 try
                 {
                     //===================鎴块棿=======================
@@ -229,15 +251,31 @@
                         MainPage.Log($"璇诲彇浜戠鍦烘櫙鏁版嵁澶辫触:Code:{pack.Code}; Msg:{pack.message}");
                     }
 
-                    //===================璇诲彇瀹夐槻鍒楄〃==========================
-                    GetSecurityList();
                     //===================璇诲彇閫昏緫鍒楄〃==========================
                     UI.UI2.Intelligence.Automation.MainView.GetLogicList();
+
                     //===================璇诲彇鍙瀵硅鏁版嵁==========================
-                    var flVideoInfo = HttpRequest.CheckFlVideo();
-                    if(flVideoInfo.Code == StateCode.SUCCESS)
+                    //鍒ゆ柇鏄惁鏈夊彲瑙嗗璁叉暟鎹紝鏈夊垯鏄剧ず鍙瀵硅icon
+                    //var flVideoInfo = HttpRequest.CheckFlVideo();
+                    //if(flVideoInfo.Code == StateCode.SUCCESS)
+                    //{
+                    //    FunctionList.List.videoIntercom1111 = Newtonsoft.Json.JsonConvert.DeserializeObject<UI.UI2.FuntionControlView.Video.VideoClouds>(flVideoInfo.Data.ToString());
+                    //}
+
+                    //======================鑾峰彇鍙瀵硅璁惧鍒楄〃====================
+                    var videoInfo= VideoSend.GetVideoInfoList();
+                    if (videoInfo.Code == StateCode.SUCCESS)
                     {
-                        FunctionList.List.videoIntercom = Newtonsoft.Json.JsonConvert.DeserializeObject<UI.UI2.FuntionControlView.Video.VideoClouds>(flVideoInfo.Data.ToString());
+                        string videoList = videoInfo.Data.ToString();
+                        FunctionList.List.videoIntercom = JsonConvert.DeserializeObject<List<UI.UI2.FuntionControlView.Video.Video>>(videoList);
+
+                        foreach (var video in FunctionList.List.videoIntercom)
+                        {
+                            if (video.interphoneType == "IMOUVISIAL")
+                            {
+                                UI.UI2.PersonalCenter.PirDevice.PirSend.LcSubAccessToken = video.subAccountToken;
+                            }
+                        }
                     }
 
                 }
diff --git a/HDL_ON/Common/Constant.cs b/HDL_ON/Common/Constant.cs
index 9f79b2f..a5c0598 100644
--- a/HDL_ON/Common/Constant.cs
+++ b/HDL_ON/Common/Constant.cs
@@ -264,6 +264,10 @@
         /// 瀹夐槻鎶ヨ
         /// </summary>
         SecurityAlarm,
+        /// <summary>
+        /// HDL鍙瀵硅
+        /// </summary>
+        HDL_INTERPHONE,
     }
 
     /// <summary>
diff --git a/HDL_ON/Common/HDLCommon.cs b/HDL_ON/Common/HDLCommon.cs
index 588b918..ecced88 100644
--- a/HDL_ON/Common/HDLCommon.cs
+++ b/HDL_ON/Common/HDLCommon.cs
@@ -295,7 +295,27 @@
                             eSVideoInfo.ESVideoUUID = eSVideoInfo.uuid;
                         }
 
-                        ESOnVideo.Current.ShowESvideoVideoIntercom(eSVideoInfo);
+                        ESOnVideo.Current.ShowESvideoVideoIntercom(eSVideoInfo, "FLVI");
+
+                    }
+                    else if (jpushMessageInfo.messageType.Contains(PushMessageType.HDL_INTERPHONE.ToString()))
+                    {
+                        if (string.IsNullOrEmpty(jpushMessageInfo.expantContent)) return;
+
+                        //瀛楁鍏煎闂锛屽彧鑳界洿鎺ュ彇鍊间簡
+                        var json= Newtonsoft.Json.Linq.JObject.Parse(jpushMessageInfo.expantContent);
+                        ESVideoInfo eSVideoInfo = new ESVideoInfo();// GetESOnVideoJson(jpushMessageInfo.expantContent);
+                        eSVideoInfo.callId = json["callId"].ToString();
+                        //eSVideoInfo.Lc_AccessToken = UI.UI2.PersonalCenter.PirDevice.PirSend.LcSubAccessToken;//json["subAccountToken"].ToString();//
+                        eSVideoInfo.Lc_AccessToken = json["subAccountToken"].ToString();//2021-05-13 鐩墠浜戠杩樻病鎷垮埌Lc_AccessToken锛岀洰鍓嶆病鍔炴硶姝e父浣跨敤
+                        eSVideoInfo.Lc_DeviceId = json["deviceId"].ToString();
+                        eSVideoInfo.Lc_Location = OnAppConfig.Instance.RequestHttpsHost.Contains("China") ? 0 : 1;
+                        eSVideoInfo.Lc_PlayToken = json["token"].ToString();
+                        eSVideoInfo.Lc_Psk = json["cname"].ToString();
+
+                        if (eSVideoInfo == null) return;
+
+                        ESOnVideo.Current.ShowESvideoVideoIntercom(eSVideoInfo, "IMOUVISIAL");
 
                     }
                     else if(jpushMessageInfo.messageType.Contains(PushMessageType.Prompt.ToString()))
@@ -311,7 +331,7 @@
         }
 
         /// <summary>
-        /// 
+        /// 瑙f瀽涓版灄鍙瀵硅鎺ㄩ�佹暟鎹�
         /// </summary>
         /// <param name="jsonStr"></param>
         /// <returns></returns>
diff --git a/HDL_ON/Common/OnAppConfig.cs b/HDL_ON/Common/OnAppConfig.cs
index 99a7de5..dd65de5 100644
--- a/HDL_ON/Common/OnAppConfig.cs
+++ b/HDL_ON/Common/OnAppConfig.cs
@@ -80,7 +80,7 @@
         /// <summary>
         ///  璐﹀彿娉ㄥ唽鏈嶅姟鍣ㄤ俊鎭�
         /// </summary>
-        public string RequestHttpsHost ="https://china.hdlcontrol.com";
+        public string RequestHttpsHost = "https://china.hdlcontrol.com";
         /// <summary>
         /// 
         /// </summary>
diff --git a/HDL_ON/Common/R.cs b/HDL_ON/Common/R.cs
index 3e8ecd9..b0096f8 100644
--- a/HDL_ON/Common/R.cs
+++ b/HDL_ON/Common/R.cs
@@ -565,40 +565,40 @@
         public const int LoginByEmail = 4;
 
 
-        /// <summary>
-        /// 瀹ゅ唴婀垮害
+        /// <summary>
+        /// 瀹ゅ唴婀垮害
         /// </summary>
         public const int IndoorHumidity = 1000;
-        /// <summary>
-        /// 绔ラ攣
+        /// <summary>
+        /// 绔ラ攣
         /// </summary>
         public const int V_chip = 1001;
-        /// <summary>
-        /// 璐熺瀛�
+        /// <summary>
+        /// 璐熺瀛�
         /// </summary>
         public const int Anion = 1002;
-        /// <summary>
-        /// 鏉�鑿�
+        /// <summary>
+        /// 鏉�鑿�
         /// </summary>
         public const int Sterilization = 1003;
-        /// <summary>
-        /// 鍔犳箍
+        /// <summary>
+        /// 鍔犳箍
         /// </summary>
-        public const int Humidification = 1004;
-        /// <summary>
-        /// 婊よ姱澶嶄綅
+        public const int Humidification = 1004;
+        /// <summary>
+        /// 婊よ姱澶嶄綅
         /// </summary>
-        public const int FilterElementReset = 1005;
-        /// <summary>
-        /// 鐏厜
+        public const int FilterElementReset = 1005;
+        /// <summary>
+        /// 鐏厜
         /// </summary>
-        public const int Lighting = 1006;
-        /// <summary>
-        /// 鑷姩妯″紡
+        public const int Lighting = 1006;
+        /// <summary>
+        /// 鑷姩妯″紡
         /// </summary>
-        public const int AutoMode = 1007;
-        /// <summary>
-        /// 鎵嬪姩妯″紡
+        public const int AutoMode = 1007;
+        /// <summary>
+        /// 鎵嬪姩妯″紡
         /// </summary>
         public const int HandMode = 1008;
         /// <summary>
@@ -613,96 +613,96 @@
         /// 瀹氭椂
         /// </summary>
         public const int Timing = 1011;
-        /// <summary>
-        /// 閫夋嫨椋庨��
+        /// <summary>
+        /// 閫夋嫨椋庨��
         /// </summary>
-        public const int WindSpeedSelection = 1012;
-        /// <summary>
-        /// 妗�
+        public const int WindSpeedSelection = 1012;
+        /// <summary>
+        /// 妗�
         /// </summary>
-        public const int Gear = 1013;
-        /// <summary>
-        /// 璇风‘璁ゆ槸鍚﹀凡瀹為檯閲嶇疆婊よ姱骞舵寜{0}鐓ц鏄庝功瑕佹眰鎿嶄綔璁惧杩涜婊よ姱{0}瀵垮懡閲嶆柊璁℃椂
+        public const int Gear = 1013;
+        /// <summary>
+        /// 璇风‘璁ゆ槸鍚﹀凡瀹為檯閲嶇疆婊よ姱骞舵寜{0}鐓ц鏄庝功瑕佹眰鎿嶄綔璁惧杩涜婊よ姱{0}瀵垮懡閲嶆柊璁℃椂
         /// </summary>
-        public const int FilterElementResetMsg = 1014;
-        /// <summary>
-        /// 浣庢。
+        public const int FilterElementResetMsg = 1014;
+        /// <summary>
+        /// 浣庢。
         /// </summary>
-        public const int LowGear = 1015;
-        /// <summary>
-        /// 涓。
+        public const int LowGear = 1015;
+        /// <summary>
+        /// 涓。
         /// </summary>
-        public const int MidGear = 1016;
-        /// <summary>
-        /// 楂樻。
+        public const int MidGear = 1016;
+        /// <summary>
+        /// 楂樻。
         /// </summary>
         public const int HeightGear = 1017;
-        /// <summary>
-        /// 瀹氭椂璁剧疆
+        /// <summary>
+        /// 瀹氭椂璁剧疆
         /// </summary>
         public const int TimingSetting = 1018;
-        /// <summary>
-        /// 灏忔椂
+        /// <summary>
+        /// 灏忔椂
         /// </summary>
         public const int Hour1 = 1019;
-        /// <summary>
-        /// 婊よ姱浣跨敤锛�
+        /// <summary>
+        /// 婊よ姱浣跨敤锛�
         /// </summary>
         public const int UseOfFilterElement = 1020;
-        /// <summary>
-        /// 绌烘皵鍑�鍖栧櫒
+        /// <summary>
+        /// 绌烘皵鍑�鍖栧櫒
         /// </summary>
         public const int AirCleaner = 1021;
-        /// <summary>
-        /// 褰撳墠椋庨��
+        /// <summary>
+        /// 褰撳墠椋庨��
         /// </summary>
-        public const int CurrentWindSpeed = 1022;
-        /// <summary>
-        /// 鍙栨秷瀹氭椂
+        public const int CurrentWindSpeed = 1022;
+        /// <summary>
+        /// 鍙栨秷瀹氭椂
         /// </summary>
-        public const int CancelTiming = 1023;
-        /// <summary>
-        /// 鎵湴鏈哄櫒浜�
+        public const int CancelTiming = 1023;
+        /// <summary>
+        /// 鎵湴鏈哄櫒浜�
         /// </summary>
         public const int WeepRobot = 1024;
-        /// <summary>
-        /// 鍚稿姏璋冭妭
+        /// <summary>
+        /// 鍚稿姏璋冭妭
         /// </summary>
         public const int SuctionAdjustment = 1025;
-        /// <summary>
-        /// 鍚稿姏1妗�
+        /// <summary>
+        /// 鍚稿姏1妗�
         /// </summary>
         public const int SuctionOneGear = 1026;
-        /// <summary>
-        /// 鍚稿姏2妗�
+        /// <summary>
+        /// 鍚稿姏2妗�
         /// </summary>
         public const int SuctionTwoGear = 1027;
-        /// <summary>
-        /// 鍚稿姏3妗�
+        /// <summary>
+        /// 鍚稿姏3妗�
         /// </summary>
         public const int SuctionThreeGear = 1028;
-        /// <summary>
-        /// 鍏呯數
+        /// <summary>
+        /// 鍏呯數
         /// </summary>
         public const int Charge = 1029;
-        /// <summary>
-        /// 澹伴煶
+        /// <summary>
+        /// 澹伴煶
         /// </summary>
-        public const int Voice = 1030;
-        /// <summary>
-        /// 闈欓煶
+        public const int Voice = 1030;
+        /// <summary>
+        /// 闈欓煶
         /// </summary>
-        public const int Mute = 1031;
-        /// <summary>
-        /// 娓呮壂妯″紡
+        public const int Mute = 1031;
+        /// <summary>
+        /// 娓呮壂妯″紡
         /// </summary>
         public const int CleanMode = 1032;
-        /// <summary>
-        /// 鑰楁潗绠$悊
+        /// <summary>
+        /// 鑰楁潗绠$悊
         /// </summary>
         public const int ConsumablesManagement = 1033;
-        /// <summary>
-        /// 鍘嗗彶璁板綍
+        /// <summary>
+        /// 鍘嗗彶璁板綍
         /// </summary>
         public const int HistoryLog = 1034;
         /// <summary>
@@ -764,367 +764,367 @@
         /// <summary>
         /// 鏄惁閲嶇疆婊ょ綉
         /// </summary>
-        public const int ResetFilterScreenMsg = 1049;
+        public const int ResetFilterScreenMsg = 1049;
         /// <summary>
         /// 娣诲姞璁惧
         /// </summary>
         public const int AddDevice = 1050;
-        /// <summary>
-        /// mini鏅鸿兘閬ユ帶鍣�
+        /// <summary>
+        /// mini鏅鸿兘閬ユ帶鍣�
         /// </summary>
-        public const int MiniIntelligentRemoteControl = 1051;
-        /// <summary>
-        /// 娣诲姞绾㈠閬ユ帶
+        public const int MiniIntelligentRemoteControl = 1051;
+        /// <summary>
+        /// 娣诲姞绾㈠閬ユ帶
         /// </summary>
-        public const int AddInfraredRemoteControl = 1052;
-        /// <summary>
-        /// 闀挎寜绾㈠閬ユ帶鍣ㄦ寜閽�10绉掞紝鎸囩ず鐏摑鑹插揩闂�
+        public const int AddInfraredRemoteControl = 1052;
+        /// <summary>
+        /// 闀挎寜绾㈠閬ユ帶鍣ㄦ寜閽�10绉掞紝鎸囩ず鐏摑鑹插揩闂�
         /// </summary>
-        public const int AddInfraredRemoteControlMsg1 = 1053;
-        /// <summary>
-        /// 璇风‘淇濇偍鐨勮摑鐗欏凡寮�鍚苟澶勪簬鍙互琚悳绱㈢姸鎬�
+        public const int AddInfraredRemoteControlMsg1 = 1053;
+        /// <summary>
+        /// 璇风‘淇濇偍鐨勮摑鐗欏凡寮�鍚苟澶勪簬鍙互琚悳绱㈢姸鎬�
         /// </summary>
-        public const int AddInfraredRemoteControlMsg2 = 1054;
-        /// <summary>
-        /// 涓嬩竴姝�
+        public const int AddInfraredRemoteControlMsg2 = 1054;
+        /// <summary>
+        /// 涓嬩竴姝�
         /// </summary>
         public const int Next = 1055;
-        /// <summary>
-        /// 璁惧鎼滅储涓�...
+        /// <summary>
+        /// 璁惧鎼滅储涓�...
         /// </summary>
-        public const int SearchingDevice = 1056;
-        /// <summary>
-        /// 娌℃湁鍙戠幇绾㈠閬ユ帶鍣�
+        public const int SearchingDevice = 1056;
+        /// <summary>
+        /// 娌℃湁鍙戠幇绾㈠閬ユ帶鍣�
         /// </summary>
-        public const int NoInfraredRemoteControlFound = 1057;
-        /// <summary>
-        /// 1銆佽妫�鏌ヨ澶囨槸鍚︽甯搁�氱數{0}2銆佽妫�鏌ヨ摑鐗欏姛鑳芥槸鍚︽甯稿紑鍚瘂0}3銆佽妫�鏌ユ寚绀虹伅鏄惁钃濊壊蹇棯鐘舵��
+        public const int NoInfraredRemoteControlFound = 1057;
+        /// <summary>
+        /// 1銆佽妫�鏌ヨ澶囨槸鍚︽甯搁�氱數{0}2銆佽妫�鏌ヨ摑鐗欏姛鑳芥槸鍚︽甯稿紑鍚瘂0}3銆佽妫�鏌ユ寚绀虹伅鏄惁钃濊壊蹇棯鐘舵��
         /// </summary>
         public const int AddInfraredRemoteControlMsg3 = 1058;
-        /// <summary>
-        /// 閲嶆柊鎼滅储
+        /// <summary>
+        /// 閲嶆柊鎼滅储
         /// </summary>
-        public const int ReSearch = 1059;
-        /// <summary>
-        /// 杩炴帴WiFi
+        public const int ReSearch = 1059;
+        /// <summary>
+        /// 杩炴帴WiFi
         /// </summary>
-        public const int ConnectWiFi = 1060;
-        /// <summary>
-        /// 鐩墠鍙敮鎸�2.4G WiFi缃戠粶{0}鏆備笉鏀寔甯︽湁涓枃瀛楃鐨刉iFi鍚嶇О
+        public const int ConnectWiFi = 1060;
+        /// <summary>
+        /// 鐩墠鍙敮鎸�2.4G WiFi缃戠粶{0}鏆備笉鏀寔甯︽湁涓枃瀛楃鐨刉iFi鍚嶇О
         /// </summary>
-        public const int AddInfraredRemoteControlMsg4 = 1061;
-        /// <summary>
-        /// 瀵嗙爜
+        public const int AddInfraredRemoteControlMsg4 = 1061;
+        /// <summary>
+        /// 瀵嗙爜
         /// </summary>
         public const int Password = 1062;
-        /// <summary>
-        /// 姝e湪杩炴帴涓�...
+        /// <summary>
+        /// 姝e湪杩炴帴涓�...
         /// </summary>
-        public const int NowConnectting = 1063;
-        /// <summary>
-        /// 璇疯绾㈠閬ユ帶灏介噺鎺ヨ繎WIFI璺敱鍣�
+        public const int NowConnectting = 1063;
+        /// <summary>
+        /// 璇疯绾㈠閬ユ帶灏介噺鎺ヨ繎WIFI璺敱鍣�
         /// </summary>
-        public const int AddInfraredRemoteControlMsg5 = 1064;
-        /// <summary>
-        /// 缃戠粶閾炬帴涓�
+        public const int AddInfraredRemoteControlMsg5 = 1064;
+        /// <summary>
+        /// 缃戠粶閾炬帴涓�
         /// </summary>
-        public const int InTheNetworkLink = 1065;
-        /// <summary>
-        /// 涓婁紶鍒颁簯
+        public const int InTheNetworkLink = 1065;
+        /// <summary>
+        /// 涓婁紶鍒颁簯
         /// </summary>
-        public const int UploadToCloud = 1066;
-        /// <summary>
-        /// 杩炴帴鎴愬姛
+        public const int UploadToCloud = 1066;
+        /// <summary>
+        /// 杩炴帴鎴愬姛
         /// </summary>
-        public const int ConnectSuccess = 1067;
-        /// <summary>
-        /// 1銆佽妫�鏌ヨ澶囨槸鍚︽甯搁�氱數{0}2銆佽寮�鍚摑鐗欏姛鑳絳0}3銆佸苟闀挎寜鎸夐挳10s锛屾寚绀虹伅甯镐寒
+        public const int ConnectSuccess = 1067;
+        /// <summary>
+        /// 1銆佽妫�鏌ヨ澶囨槸鍚︽甯搁�氱數{0}2銆佽寮�鍚摑鐗欏姛鑳絳0}3銆佸苟闀挎寜鎸夐挳10s锛屾寚绀虹伅甯镐寒
         /// </summary>
         public const int AddInfraredRemoteControlMsg6 = 1068;
-        /// <summary>
-        /// 娣诲姞澶辫触
+        /// <summary>
+        /// 娣诲姞澶辫触
         /// </summary>
-        public const int AddFail = 1069;
-        /// <summary>
-        /// 娣诲姞鎴愬姛
+        public const int AddFail = 1069;
+        /// <summary>
+        /// 娣诲姞鎴愬姛
         /// </summary>
-        public const int AddSuccess = 1070;
-        /// <summary>
-        /// 鍙互寮�濮嬩娇鐢ㄧ孩澶栭仴鎺у姛鑳斤紒
+        public const int AddSuccess = 1070;
+        /// <summary>
+        /// 鍙互寮�濮嬩娇鐢ㄧ孩澶栭仴鎺у姛鑳斤紒
         /// </summary>
         public const int AddInfraredRemoteControlMsg7 = 1071;
-        /// <summary>
-        /// 寮�濮嬩娇鐢�
+        /// <summary>
+        /// 寮�濮嬩娇鐢�
         /// </summary>
         public const int StartUse = 1072;
-        /// <summary>
-        /// 璇锋墦寮�钃濈墮
+        /// <summary>
+        /// 璇锋墦寮�钃濈墮
         /// </summary>
         public const int PleaseTurnOnBluetooth = 1073;
-        /// <summary>
-        /// 浣嶇疆淇℃伅(GBS)涓嶅彲鐢�
+        /// <summary>
+        /// 浣嶇疆淇℃伅(GBS)涓嶅彲鐢�
         /// </summary>
-        public const int GbsIsNotAvailable = 1074;
-        /// <summary>
-        /// 缃戠粶涓嶅彲鐢�
+        public const int GbsIsNotAvailable = 1074;
+        /// <summary>
+        /// 缃戠粶涓嶅彲鐢�
         /// </summary>
         public const int NetworkIsNotAvailable = 1075;
-        /// <summary>
-        /// 閫夋嫨绾㈠閬ユ帶鍣�
+        /// <summary>
+        /// 閫夋嫨绾㈠閬ユ帶鍣�
         /// </summary>
-        public const int ChooseInfraredRemoteControl = 1076;
-        /// <summary>
-        /// 鏂伴
+        public const int ChooseInfraredRemoteControl = 1076;
+        /// <summary>
+        /// 鏂伴
         /// </summary>
-        public const int AirFresh = 1077;
-        /// <summary>
-        /// 褰撳墠婊ょ綉鍓╀綑
+        public const int AirFresh = 1077;
+        /// <summary>
+        /// 褰撳墠婊ょ綉鍓╀綑
         /// </summary>
-        public const int ResidualFilterScreen = 1078;
-        /// <summary>
-        /// 鑺傝兘
+        public const int ResidualFilterScreen = 1078;
+        /// <summary>
+        /// 鑺傝兘
         /// </summary>
-        public const int Energy = 1079;
-        /// <summary>
-        /// 閫氶
+        public const int Energy = 1079;
+        /// <summary>
+        /// 閫氶
         /// </summary>
-        public const int Ventilated = 1080;
-        /// <summary>
-        /// 1妗�
+        public const int Ventilated = 1080;
+        /// <summary>
+        /// 1妗�
         /// </summary>
         public const int OneGear = 1081;
-        /// <summary>
-        /// 2妗�
+        /// <summary>
+        /// 2妗�
         /// </summary>
         public const int TwoGear = 1082;
-        /// <summary>
-        /// 3妗�
+        /// <summary>
+        /// 3妗�
         /// </summary>
-        public const int ThreeGear = 1083;
-        /// <summary>
-        /// 椋庨��1妗�
+        public const int ThreeGear = 1083;
+        /// <summary>
+        /// 椋庨��1妗�
         /// </summary>
         public const int FanOneGear = 1084;
-        /// <summary>
-        /// 椋庨��2妗�
+        /// <summary>
+        /// 椋庨��2妗�
         /// </summary>
         public const int FanTwoGear = 1085;
-        /// <summary>
-        /// 椋庨��3妗�
+        /// <summary>
+        /// 椋庨��3妗�
         /// </summary>
-        public const int FanThreeGear = 1086;
-        /// <summary>
-        /// 涓�閿紑閿�
+        public const int FanThreeGear = 1086;
+        /// <summary>
+        /// 涓�閿紑閿�
         /// </summary>
-        public const int OneKeyUnlocking = 1087;
-        /// <summary>
-        /// 涓存椂瀵嗙爜寮�閿�
+        public const int OneKeyUnlocking = 1087;
+        /// <summary>
+        /// 涓存椂瀵嗙爜寮�閿�
         /// </summary>
-        public const int TemporaryPasswordUnlocking = 1088;
-        /// <summary>
-        /// 宸茶繛鎺�
+        public const int TemporaryPasswordUnlocking = 1088;
+        /// <summary>
+        /// 宸茶繛鎺�
         /// </summary>
-        public const int Connected = 1089;
-        /// <summary>
-        /// 鏈繛鎺�
+        public const int Connected = 1089;
+        /// <summary>
+        /// 鏈繛鎺�
         /// </summary>
-        public const int UnConnected = 1090;
-        /// <summary>
-        /// 鐢熸垚涓存椂瀵嗙爜
+        public const int UnConnected = 1090;
+        /// <summary>
+        /// 鐢熸垚涓存椂瀵嗙爜
         /// </summary>
-        public const int CreatTemporaryPassword = 1091;
-        /// <summary>
-        /// 鐢熸晥鏃堕棿
+        public const int CreatTemporaryPassword = 1091;
+        /// <summary>
+        /// 鐢熸晥鏃堕棿
         /// </summary>
-        public const int EffectiveTime = 1092;
-        /// <summary>
-        /// 澶辨晥鏃堕棿
+        public const int EffectiveTime = 1092;
+        /// <summary>
+        /// 澶辨晥鏃堕棿
         /// </summary>
-        public const int FailureTime = 1093;
-        /// <summary>
-        /// 閫夋嫨鏃堕棿
+        public const int FailureTime = 1093;
+        /// <summary>
+        /// 閫夋嫨鏃堕棿
         /// </summary>
-        public const int SelectTime = 1094;
-        /// <summary>
-        /// 閫夋嫨鏃ユ湡
+        public const int SelectTime = 1094;
+        /// <summary>
+        /// 閫夋嫨鏃ユ湡
         /// </summary>
         public const int SelectDate = 1095;
-        /// <summary>
-        /// 鐢熸垚
+        /// <summary>
+        /// 鐢熸垚
         /// </summary>
-        public const int Generate = 1096;
-        /// <summary>
-        /// 涓存椂瀵嗙爜宸茬粡澶嶅埗
+        public const int Generate = 1096;
+        /// <summary>
+        /// 涓存椂瀵嗙爜宸茬粡澶嶅埗
         /// </summary>
-        public const int TempPsswordHasBeenCopy = 1097;
-        /// <summary>
-        /// 娓呴櫎褰撳墠涓存椂瀵嗙爜锛�
+        public const int TempPsswordHasBeenCopy = 1097;
+        /// <summary>
+        /// 娓呴櫎褰撳墠涓存椂瀵嗙爜锛�
         /// </summary>
-        public const int ClearTempPsswordMsg = 1098;
-        /// <summary>
-        /// 鐢熸晥鏃堕棿蹇呴』澶т簬澶辨晥鏃堕棿
+        public const int ClearTempPsswordMsg = 1098;
+        /// <summary>
+        /// 鐢熸晥鏃堕棿蹇呴』澶т簬澶辨晥鏃堕棿
         /// </summary>
-        public const int EffectiveTimeMustBeOverFailureTime = 1099;
-        /// <summary>
-        /// 寮�閿佹柟寮忕鐞�
+        public const int EffectiveTimeMustBeOverFailureTime = 1099;
+        /// <summary>
+        /// 寮�閿佹柟寮忕鐞�
         /// </summary>
-        public const int UnlockingManagement = 1100;
-        /// <summary>
-        /// 鍒犻櫎鎿嶄綔灏嗚鍚屾浜庡疄浣撻攣涓婃槸鍚﹁繕闇�瑕佸垹闄わ紵
+        public const int UnlockingManagement = 1100;
+        /// <summary>
+        /// 鍒犻櫎鎿嶄綔灏嗚鍚屾浜庡疄浣撻攣涓婃槸鍚﹁繕闇�瑕佸垹闄わ紵
         /// </summary>
         public const int DeleteUnlockingMethordMsg = 1101;
-        /// <summary>
-        /// 纭鍒犻櫎
+        /// <summary>
+        /// 纭鍒犻櫎
         /// </summary>
-        public const int ConfirmDeletion = 1102;
-        /// <summary>
-        /// 淇敼澶囨敞鍚嶇О
+        public const int ConfirmDeletion = 1102;
+        /// <summary>
+        /// 淇敼澶囨敞鍚嶇О
         /// </summary>
-        public const int EditorRemarkName = 1103;
-        /// <summary>
-        /// 澶囨敞鍚嶇О涓嶈兘涓虹┖
+        public const int EditorRemarkName = 1103;
+        /// <summary>
+        /// 澶囨敞鍚嶇О涓嶈兘涓虹┖
         /// </summary>
         public const int RemarkNameCanNotEmpty = 1104;
-        /// <summary>
-        /// 鍒嗛厤鑷�
+        /// <summary>
+        /// 鍒嗛厤鑷�
         /// </summary>
         public const int AssignTo = 1105;
-        /// <summary>
-        /// 妫�娴嬩笉鍒板彲渚涢�夋嫨鐨勫満鏅�
+        /// <summary>
+        /// 妫�娴嬩笉鍒板彲渚涢�夋嫨鐨勫満鏅�
         /// </summary>
-        public const int NotHadCanSelectScene = 1106;
-        /// <summary>
-        /// 閫夋嫨鍦烘櫙
+        public const int NotHadCanSelectScene = 1106;
+        /// <summary>
+        /// 閫夋嫨鍦烘櫙
         /// </summary>
-        public const int SelectScene = 1107;
-        /// <summary>
-        /// 閿佸凡鎵撳紑
+        public const int SelectScene = 1107;
+        /// <summary>
+        /// 閿佸凡鎵撳紑
         /// </summary>
         public const int LockIsOpened = 1108;
-        /// <summary>
-        /// 甯稿紑
+        /// <summary>
+        /// 甯稿紑
         /// </summary>
         public const int AlwaysOn = 1109;
-        /// <summary>
-        /// 鏃舵晥鎬у父寮�璁剧疆
+        /// <summary>
+        /// 鏃舵晥鎬у父寮�璁剧疆
         /// </summary>
         public const int TimelyAlwaysOnSetting = 1110;
-        /// <summary>
-        /// 甯稿紑鑷姩鍖�
+        /// <summary>
+        /// 甯稿紑鑷姩鍖�
         /// </summary>
-        public const int AutomationAlwaysOn = 1111;
-        /// <summary>
-        /// 鎵撳紑甯稿紑妯″紡
+        public const int AutomationAlwaysOn = 1111;
+        /// <summary>
+        /// 鎵撳紑甯稿紑妯″紡
         /// </summary>
-        public const int OpenAlwaysOnModel = 1112;
-        /// <summary>
-        /// 鍏抽棴甯稿紑妯″紡
+        public const int OpenAlwaysOnModel = 1112;
+        /// <summary>
+        /// 鍏抽棴甯稿紑妯″紡
         /// </summary>
-        public const int CloseAlwaysOnModel = 1113;
-        /// <summary>
-        /// 缂栬緫
+        public const int CloseAlwaysOnModel = 1113;
+        /// <summary>
+        /// 缂栬緫
         /// </summary>
         public const int Edit = 1114;
-        /// <summary>
-        /// 甯稿紑妯″紡灏嗕簬{0}鍏抽棴
+        /// <summary>
+        /// 甯稿紑妯″紡灏嗕簬{0}鍏抽棴
         /// </summary>
-        public const int AlwaysOnWillCloseOnTime = 1115;
-        /// <summary>
-        /// 鏉′欢
+        public const int AlwaysOnWillCloseOnTime = 1115;
+        /// <summary>
+        /// 鏉′欢
         /// </summary>
         public const int Condtion = 1116;
-        /// <summary>
-        /// 鍔ㄤ綔
+        /// <summary>
+        /// 鍔ㄤ綔
         /// </summary>
         public const int Action = 1117;
-        /// <summary>
-        /// 甯稿紑妯″紡
+        /// <summary>
+        /// 甯稿紑妯″紡
         /// </summary>
-        public const int AlwaysOnModel = 1118;
-        /// <summary>
-        /// 閿�
+        public const int AlwaysOnModel = 1118;
+        /// <summary>
+        /// 閿�
         /// </summary>
-        public const int Lock = 1119;
-        /// <summary>
-        /// 鐢ㄦ埛
+        public const int Lock = 1119;
+        /// <summary>
+        /// 鐢ㄦ埛
         /// </summary>
-        public const int User = 1120;
-        /// <summary>
-        /// 寮�閿佹柟寮�
+        public const int User = 1120;
+        /// <summary>
+        /// 寮�閿佹柟寮�
         /// </summary>
-        public const int UnlockingMode = 1121;
-        /// <summary>
-        /// 鎸囩汗
+        public const int UnlockingMode = 1121;
+        /// <summary>
+        /// 鎸囩汗
         /// </summary>
-        public const int Fingerprints = 1122;
-        /// <summary>
-        /// 鍗�
+        public const int Fingerprints = 1122;
+        /// <summary>
+        /// 鍗�
         /// </summary>
-        public const int Card = 1123;
-        /// <summary>
-        /// 閽ュ寵
+        public const int Card = 1123;
+        /// <summary>
+        /// 閽ュ寵
         /// </summary>
-        public const int Key = 1124;
-        /// <summary>
-        /// 淇℃伅绫诲瀷
+        public const int Key = 1124;
+        /// <summary>
+        /// 淇℃伅绫诲瀷
         /// </summary>
-        public const int MessageType = 1125;
-        /// <summary>
-        /// 寮�閿佷俊鎭�
+        public const int MessageType = 1125;
+        /// <summary>
+        /// 寮�閿佷俊鎭�
         /// </summary>
-        public const int UnlockingMessage = 1126;
-        /// <summary>
-        /// 鎶ヨ绫讳俊鎭�
+        public const int UnlockingMessage = 1126;
+        /// <summary>
+        /// 鎶ヨ绫讳俊鎭�
         /// </summary>
-        public const int AlarmMessage = 1127;
-        /// <summary>
-        /// 璁惧涓嶅湪绾�
+        public const int AlarmMessage = 1127;
+        /// <summary>
+        /// 璁惧涓嶅湪绾�
         /// </summary>
-        public const int DeviceNotOnline = 1128;
-        /// <summary>
-        /// 绗竴娆′娇鐢紝璇峰厛缁戝畾闂ㄩ攣瀵嗙爜
+        public const int DeviceNotOnline = 1128;
+        /// <summary>
+        /// 绗竴娆′娇鐢紝璇峰厛缁戝畾闂ㄩ攣瀵嗙爜
         /// </summary>
         public const int PleaseBindTheDoorPswFirst = 1129;
-        /// <summary>
-        /// 璇疯緭鍏ラ棬閿佺鐞嗗憳瀵嗙爜
+        /// <summary>
+        /// 璇疯緭鍏ラ棬閿佺鐞嗗憳瀵嗙爜
         /// </summary>
-        public const int PleaseInputDoorAdminPassword = 1130;
-        /// <summary>
-        /// 闂ㄩ攣缁戝畾鎴愬姛
+        public const int PleaseInputDoorAdminPassword = 1130;
+        /// <summary>
+        /// 闂ㄩ攣缁戝畾鎴愬姛
         /// </summary>
         public const int BindDoorLockSuccess = 1131;
-        /// <summary>
-        /// 涓轰簡瀹夊叏锛岃璺宠浆鑷充釜浜轰腑蹇儃0}璁剧疆涓汉瀵嗙爜锛屽苟搴旂敤浜庨棬閿佸紑閿�
+        /// <summary>
+        /// 涓轰簡瀹夊叏锛岃璺宠浆鑷充釜浜轰腑蹇儃0}璁剧疆涓汉瀵嗙爜锛屽苟搴旂敤浜庨棬閿佸紑閿�
         /// </summary>
         public const int JumpToPersonalCentetToSetPasswordMsg = 1132;
-        /// <summary>
-        /// 璺宠浆
+        /// <summary>
+        /// 璺宠浆
         /// </summary>
-        public const int Jump = 1133;
-        /// <summary>
-        /// 璇风粯鍒跺浘妗�
+        public const int Jump = 1133;
+        /// <summary>
+        /// 璇风粯鍒跺浘妗�
         /// </summary>
-        public const int PleaseDrawPattern = 1134;
-        /// <summary>
-        /// 璁剧疆甯稿紑妯″紡鍚巤0}鎮ㄧ殑闂ㄩ攣灏嗗浜庢墦寮�鐘舵�亄0}鏄惁缁х画寮�鍚�
+        public const int PleaseDrawPattern = 1134;
+        /// <summary>
+        /// 璁剧疆甯稿紑妯″紡鍚巤0}鎮ㄧ殑闂ㄩ攣灏嗗浜庢墦寮�鐘舵�亄0}鏄惁缁х画寮�鍚�
         /// </summary>
-        public const int OpenAlwayOnConfirmMsg = 1135;
-        /// <summary>
-        /// 纭寮�鍚�
+        public const int OpenAlwayOnConfirmMsg = 1135;
+        /// <summary>
+        /// 纭寮�鍚�
         /// </summary>
-        public const int ConfirmOpen = 1136;
-        /// <summary>
-        /// 澶辨晥璁剧疆
+        public const int ConfirmOpen = 1136;
+        /// <summary>
+        /// 澶辨晥璁剧疆
         /// </summary>
-        public const int FailTimeSeetion = 1137;
-        /// <summary>
-        /// 甯稿紑妯″紡灏嗕簬{0}灏忔椂鍚庡け鏁�
+        public const int FailTimeSeetion = 1137;
+        /// <summary>
+        /// 甯稿紑妯″紡灏嗕簬{0}灏忔椂鍚庡け鏁�
         /// </summary>
-        public const int AlwayOnWillCloseAtTimeMsg = 1138;
-        /// <summary>
-        /// 璇疯緭鍏ュけ鏁堟椂闂�
+        public const int AlwayOnWillCloseAtTimeMsg = 1138;
+        /// <summary>
+        /// 璇疯緭鍏ュけ鏁堟椂闂�
         /// </summary>
-        public const int PleaseInputFailTime = 1139;
+        public const int PleaseInputFailTime = 1139;
         /// <summary>
         /// 澶辨晥鏃堕棿涓嶈兘澶т簬72灏忔椂
         /// </summary>
@@ -1132,109 +1132,109 @@
         /// <summary>
         /// 澶辨晥鏃堕棿涓嶈兘灏忎簬1灏忔椂
         /// </summary>
-        public const int InvalidTimeLessThan1 = 1141;
+        public const int InvalidTimeLessThan1 = 1141;
         /// <summary>
         /// 甯稿紑妯″紡鍏抽棴璁剧疆澶辨晥锛岃閲嶈瘯
         /// </summary>
-        public const int AlwayOnFailTimeSettionFailMsg = 1142;
+        public const int AlwayOnFailTimeSettionFailMsg = 1142;
         /// <summary>
         /// 绠$悊鍛樿韩浠介獙璇佸け璐�,璇烽噸鏂扮櫥褰�
         /// </summary>
-        public const int CheckAdminFailAndLoginAgain = 1143;
+        public const int CheckAdminFailAndLoginAgain = 1143;
         /// <summary>
         /// 鎮ㄧ殑浣忓畢灏嗚繃鎴风粰鍏朵粬HDL璐﹀彿
         /// </summary>
-        public const int YourHomeWillBeTransferredToOtherAccounts = 1144;
+        public const int YourHomeWillBeTransferredToOtherAccounts = 1144;
         /// <summary>
         /// 璇锋敞鎰忥細
         /// </summary>
-        public const int Attention = 1145;
+        public const int Attention = 1145;
         /// <summary>
         /// 1.璇ヤ綇瀹呮偍鐨勬暟鎹紙浜戠鏁版嵁锛夊皢鍏ㄩ儴杞Щ缁欐柊鐨勬埛涓粄0}2.杩囨埛鍚庯紝鍘熸湁鐨勬垚鍛樺皢鑷姩瑙g粦璇ヤ綇瀹厈0}3.鏂版埛涓昏处鍙蜂负鏈夋晥鐨凥DL璐﹀彿{0}4.鎺ユ敹鏂硅处鍙蜂笌杞Щ鏂硅处鍙蜂笉鍙负鍚屼竴涓处鍙�
         /// </summary>
-        public const int TransferreConfirmMsg1 = 1146;
-        /// <summary>
-        /// 纭杩囨埛
-        /// </summary>
-        public const int ConfirmTransferre = 1147;
-        /// <summary>
-        /// 璇疯緭鍏ユ帴鏀舵柟璐﹀彿
-        /// </summary>
+        public const int TransferreConfirmMsg1 = 1146;
+        /// <summary>
+        /// 纭杩囨埛
+        /// </summary>
+        public const int ConfirmTransferre = 1147;
+        /// <summary>
+        /// 璇疯緭鍏ユ帴鏀舵柟璐﹀彿
+        /// </summary>
         public const int PleaseInputReceiverAccount = 1148;
-        /// <summary>
-        /// 涓汉璧勬枡
+        /// <summary>
+        /// 涓汉璧勬枡
         /// </summary>
-        public const int Profile = 1149;
-        /// <summary>
-        /// 纭杩囨埛{0}鐨勭鐞嗗憳璐﹀彿缁欒处鍙穥1}
+        public const int Profile = 1149;
+        /// <summary>
+        /// 纭杩囨埛{0}鐨勭鐞嗗憳璐﹀彿缁欒处鍙穥1}
         /// </summary>
-        public const int TransferreConfirmMsg2 = 1150;
-        /// <summary>
-        /// 鐩爣璐﹀彿骞朵笉瀛樺湪
+        public const int TransferreConfirmMsg2 = 1150;
+        /// <summary>
+        /// 鐩爣璐﹀彿骞朵笉瀛樺湪
         /// </summary>
-        public const int TargetAcountDoesNotExist = 1151;
+        public const int TargetAcountDoesNotExist = 1151;
         /// <summary>
         /// 涓嶈兘鑷繁杩囨埛缁欒嚜宸�
         /// </summary>
         public const int YouCannotTransferOwnershipToYourself = 1152;
-        /// <summary>
-        /// 缁堟
+        /// <summary>
+        /// 缁堟
         /// </summary>
-        public const int Terminate = 1153;
-        /// <summary>
-        /// 姝e湪杩囨埛缁欑敤鎴�,璇风◢鍚�...
+        public const int Terminate = 1153;
+        /// <summary>
+        /// 姝e湪杩囨埛缁欑敤鎴�,璇风◢鍚�...
         /// </summary>
-        public const int IsTransferingPleaseWaitting = 1154;
+        public const int IsTransferingPleaseWaitting = 1154;
         /// <summary>
         /// 鐢ㄦ埛{0}宸茬粡鎴愪负浣忓畢琛岀鐞嗗憳
         /// </summary>
         public const int CongratulationsXXBecomingNNAdministrator = 1155;
-        /// <summary>
-        /// 璇ヤ綇瀹呯殑淇℃伅灏嗗湪鎮ㄧ殑璐﹀彿涓垹闄�
+        /// <summary>
+        /// 璇ヤ綇瀹呯殑淇℃伅灏嗗湪鎮ㄧ殑璐﹀彿涓垹闄�
         /// </summary>
         public const int ResidenceDataWillBeDeletedFromYourAccount = 1156;
-        /// <summary>
-        /// 杩囨埛澶辫触
+        /// <summary>
+        /// 杩囨埛澶辫触
         /// </summary>
         public const int TransferFail = 1157;
-        /// <summary>
-        /// 璇烽噸鏂板皾璇�
+        /// <summary>
+        /// 璇烽噸鏂板皾璇�
         /// </summary>
-        public const int PleaseTryAgain = 1158;
-        /// <summary>
-        /// 绠$悊鍛樻潈闄愯浆绉�
+        public const int PleaseTryAgain = 1158;
+        /// <summary>
+        /// 绠$悊鍛樻潈闄愯浆绉�
         /// </summary>
-        public const int AdminAuthorityTransfer = 1159;
-        /// <summary>
-        /// 鎮ㄥ皢杞Щ鎮ㄧ殑绠$悊鍛樻潈闄愮粰鍏朵粬鎴愬憳
+        public const int AdminAuthorityTransfer = 1159;
+        /// <summary>
+        /// 鎮ㄥ皢杞Щ鎮ㄧ殑绠$悊鍛樻潈闄愮粰鍏朵粬鎴愬憳
         /// </summary>
-        public const int AdminAuthorityTransferMag1 = 1160;
-        /// <summary>
-        /// 1.璇ヤ綇瀹呮偍鐨勭鐞嗗憳鏁版嵁锛堜簯绔暟鎹級灏嗗叏閮ㄨ浆绉荤粰鏂扮殑绠$悊鍛榹0}2.鎮ㄧ殑鏁版嵁灏嗕細涓庣洰鏍囨垚鍛樹簰鎹紝鎮ㄧ殑鏉冮檺灏嗗彉鏇翠负鐩爣鎴愬憳鐨勬潈闄�
+        public const int AdminAuthorityTransferMag1 = 1160;
+        /// <summary>
+        /// 1.璇ヤ綇瀹呮偍鐨勭鐞嗗憳鏁版嵁锛堜簯绔暟鎹級灏嗗叏閮ㄨ浆绉荤粰鏂扮殑绠$悊鍛榹0}2.鎮ㄧ殑鏁版嵁灏嗕細涓庣洰鏍囨垚鍛樹簰鎹紝鎮ㄧ殑鏉冮檺灏嗗彉鏇翠负鐩爣鎴愬憳鐨勬潈闄�
         /// </summary>
         public const int AdminAuthorityTransferMag2 = 1161;
-        /// <summary>
-        /// 纭杞Щ
+        /// <summary>
+        /// 纭杞Щ
         /// </summary>
-        public const int ConfirmTransfer2 = 1162;
-        /// <summary>
-        /// 妫�娴嬩笉鍒板彲渚涢�夋嫨鐨勬垚鍛�
+        public const int ConfirmTransfer2 = 1162;
+        /// <summary>
+        /// 妫�娴嬩笉鍒板彲渚涢�夋嫨鐨勬垚鍛�
         /// </summary>
-        public const int NotHadMemberToSelect = 1163;
-        /// <summary>
-        /// 纭杞Щ{0}鐨勭鐞嗗憳鏉冮檺缁欒处鍙穥1}
+        public const int NotHadMemberToSelect = 1163;
+        /// <summary>
+        /// 纭杞Щ{0}鐨勭鐞嗗憳鏉冮檺缁欒处鍙穥1}
         /// </summary>
-        public const int TransferreConfirmMsg3 = 1164;
-        /// <summary>
-        /// 杩佺Щ鎴愬姛
+        public const int TransferreConfirmMsg3 = 1164;
+        /// <summary>
+        /// 杩佺Щ鎴愬姛
         /// </summary>
-        public const int TransferreSuccess1 = 1165;
-        /// <summary>
-        /// 杩佺Щ澶辫触
+        public const int TransferreSuccess1 = 1165;
+        /// <summary>
+        /// 杩佺Щ澶辫触
         /// </summary>
-        public const int TransferreFail1 = 1166;
-        /// <summary>
-        /// 杩佺Щ鎴愬姛锛屾偍鐨勬潈闄愬皢鍙樹负鏅�氭垚鍛�
+        public const int TransferreFail1 = 1166;
+        /// <summary>
+        /// 杩佺Щ鎴愬姛锛屾偍鐨勬潈闄愬皢鍙樹负鏅�氭垚鍛�
         /// </summary>
         public const int TransferreSuccessMsg1 = 1167;
 
diff --git a/HDL_ON/DAL/Server/HttpServerRequest.cs b/HDL_ON/DAL/Server/HttpServerRequest.cs
index d6399e0..ec3e6ad 100644
--- a/HDL_ON/DAL/Server/HttpServerRequest.cs
+++ b/HDL_ON/DAL/Server/HttpServerRequest.cs
@@ -2481,7 +2481,7 @@
 
         #region 鈻� 鍙瀵硅_________________________
         /// <summary>
-        /// 妫�鏌ヤ綇瀹呮槸鍚︾粦瀹氫赴鏋楋紝骞惰幏鍙栭棬鍙f満鍒楄〃
+        /// 妫�鏌ヤ綇瀹呮槸鍚︾粦瀹氫赴鏋�
         /// </summary>
         /// <returns></returns>
         public ResponsePackNew CheckFlVideo()
diff --git a/HDL_ON/DAL/Server/HttpUtil.cs b/HDL_ON/DAL/Server/HttpUtil.cs
index 32c87e1..abe29fc 100644
--- a/HDL_ON/DAL/Server/HttpUtil.cs
+++ b/HDL_ON/DAL/Server/HttpUtil.cs
@@ -164,7 +164,7 @@
 
 
                 ////**************娴嬭瘯**************
-                //string requestFullUrl = GlobalRequestHttpsHost + apiPath;
+                string requestFullUrl = GlobalRequestHttpsHost + apiPath;
                 ////**************娴嬭瘯**************
 
                 RestClient client = new RestClient(requestFullUrl);
@@ -284,7 +284,7 @@
 
 
         /// <summary>
-        /// 鍒锋柊Token
+        /// 鍒锋柊  Token
         /// </summary>
         /// <returns></returns>
         static bool RefreshToken()
diff --git a/HDL_ON/DAL/Server/NewAPI.cs b/HDL_ON/DAL/Server/NewAPI.cs
index 577a028..1377465 100644
--- a/HDL_ON/DAL/Server/NewAPI.cs
+++ b/HDL_ON/DAL/Server/NewAPI.cs
@@ -450,53 +450,6 @@
 
         #endregion
 
-        #region Kaede -- 瀹夐槻鎺ュ彛____________________________
-        /// <summary>
-        /// 鑾峰彇瀹夐槻鍒楄〃
-        /// </summary>
-        public const string Api_Post_Security_List = "/home-wisdom/app/security/list";
-        /// <summary>
-        /// 鑾峰彇瀹夐槻璇︽儏
-        /// </summary>
-        public const string Api_Post_Security_Info = "/home-wisdom/app/security/info";
-        /// <summary>
-        /// 娣诲姞瀹夐槻
-        /// </summary>
-        public const string Api_Post_Security_Add = "/home-wisdom/app/security/add";
-        /// <summary>
-        /// 缂栬緫瀹夐槻
-        /// </summary>
-        public const string Api_Post_Security_Edit = "/home-wisdom/app/security/update";
-        /// <summary>
-        /// 鍒犻櫎瀹夐槻
-        /// </summary>
-        public const string Api_Post_Security_Delete = "/home-wisdom/app/security/delete";
-        /// <summary>
-        /// 璇诲彇瀹夐槻闃插尯鐘舵��
-        /// </summary>
-        public const string Api_Post_Security_StatusRead = "/home-wisdom/app/security/statusRead";
-        /// <summary>
-        /// 璁剧疆瀹夐槻闃插尯鐘舵��
-        /// </summary>
-        public const string Api_Post_Security_StatusSet = "/home-wisdom/app/security/statusSet";
-        /// <summary>
-        /// 瀹夐槻bypass璁剧疆
-        /// </summary>
-        public const string Api_Post_Security_BypassSet = "/home-wisdom/app/security/bypassSet";
-        /// <summary>
-        /// 瀹夐槻bypass璇诲彇
-        /// </summary>
-        public const string Api_Post_Security_BypassRead = "/home-wisdom/app/security/bypassRead";
-        /// <summary>
-        /// 鏌ヨ瀹夐槻鎵�鏈夎褰�
-        /// </summary>
-        public const string Api_Post_Security_ListSecurityLog = "/home-wisdom/app/security/listSecurityLog";
-        /// <summary>
-        /// 鏌ヨ瀹夐槻鎶ヨ璁板綍
-        /// </summary>
-        public const string Api_Post_Security_ListAlarmLog = "/home-wisdom/app/security/listAlarmLog";
-
-        #endregion
 
 
         #region 鈻�  -- 鎴块棿銆佽澶囥�佸満鏅垎浜玙__________________________
@@ -606,7 +559,7 @@
 
         #region  鈻�  -- 涓版灄鐩稿叧鐩稿叧鎺ュ彛___________________________
         /// <summary>
-        /// 妫�鏌ヤ綇瀹呮槸鍚︾粦瀹氫赴鏋楋紝骞惰幏鍙栭棬鍙f満鍒楄〃
+        /// 妫�鏌ヤ綇瀹呮槸鍚︾粦瀹氫赴鏋�
         /// </summary>
         public const string API_POST_FL_Check = "/home-wisdom/app/fl/vi/check";
         /// <summary>
@@ -632,7 +585,8 @@
         /// <summary>
         /// 鑾峰彇閫氳瘽璁板綍
         /// </summary>
-        public const string API_POST_FL_GetCallList = "/home-wisdom/app/fl/vi/list";
+        //public const string API_POST_FL_GetCallList = "/home-wisdom/app/fl/vi/list";
+        public const string API_POST_FL_GetCallList = "/home-wisdom/platform/imou/listCallRecords";
         /// <summary>
         /// 鍒犻櫎閫氳瘽璁板綍
         /// </summary>
@@ -647,7 +601,21 @@
         public const string API_POST_FL_QRcode = "http://112.74.164.111:180/api.php/Device/setdynamicpwd";
         #endregion
 
-        #region  鈻�  -- 闂ㄩ攣鐩稿叧鎺ュ彛_______________________________
+        #region 鍙瀵硅鏍囧噯閫氱敤鎺ュ彛
+        /// <summary>
+        /// 鑾峰彇鍙瀵硅璁惧鍒楄〃锛堟墍鏈夊鎺ュ彲瑙嗗璁查兘鍖呭惈涓�璧凤級
+        /// </summary>
+        public const string API_POST_VideoDeviceList = "/home-wisdom/platform/imou/listVisualSpeaks";
+        /// <summary>
+        /// 杩滅▼寮�闂�
+        /// </summary>
+        public const string API_POST_VideoDevice_OpenDoorbell = "/home-wisdom/platform/imou/openDoorbell";
+        /// <summary>
+        /// 鏇存敼閫氳瘽鐘舵��
+        /// </summary>
+        public const string API_POST_VideoDevice_UpdateCallStatus = "/home-wisdom/platform/imou/updateCallStatus";
+        #endregion
+
 
         /// <summary>
         /// 鍒ゆ柇闂ㄩ攣鏄惁绗竴浣跨敤
diff --git a/HDL_ON/DAL/ThirdPartySdk/ESOnVideo.cs b/HDL_ON/DAL/ThirdPartySdk/ESOnVideo.cs
index 9758f95..b6ad254 100644
--- a/HDL_ON/DAL/ThirdPartySdk/ESOnVideo.cs
+++ b/HDL_ON/DAL/ThirdPartySdk/ESOnVideo.cs
@@ -3,9 +3,11 @@
 using HDL_ON.DAL.Server;
 using System.Threading;
 using System.Collections.Generic;
+using HDL_ON.UI.UI2.PersonalCenter.PirDevice;
 
 #if __IOS__
 using Shared.IOS.ESVideoOnSDK;
+using Shared.IOS.LCVideoOnSDK;
 using UIKit;
 using Foundation;
 #else
@@ -56,77 +58,151 @@
         /// <summary>
         /// 鐩戞帶椤甸潰
         /// </summary>
-        /// <param name="mESVideoInfo">涓版灄鐩戣鎵�闇�鐩稿叧鍙傛暟</param>
-        public void ShowESVideoMonitor(ESVideoInfo mESVideoInfo)
+        /// <param name="mESVideoInfo"></param>
+        public void ShowESVideoMonitor(ESVideoInfo mESVideoInfo, string interphoneType)
         {
-#if __IOS__
-             int roomID = 0;
+            this.esVideoInfo = mESVideoInfo;
+            int roomID = 0;
             int.TryParse(mESVideoInfo.roomno, out roomID);
-            ESOnMonitorViewController vc = new ESOnMonitorViewController();
-            vc.MESVideoID = mESVideoInfo.ESVideoUUID;
-            vc.MESRoomID =roomID;
-            vc.DeviceName = mESVideoInfo.DeviceName;
-            //vc.RoomName = mESVideoInfo.RoomName;
-            //vc.MESCallDelegate = new OnESCallDelegate(this);
-            mOnESCallDelegate = new OnESCallDelegate(this);
-            vc.MESCallDelegate = mOnESCallDelegate;
-            Shared.Application.currentVC.NavigationController.PushViewController(vc, true);
-#else
 
-            Intent intent = new Intent(Shared.Application.Activity, typeof(HDL_ON_Android.VideoActivity));
+#if __IOS__
+            if (interphoneType == "IMOUVISIAL")
+            {
+                //涔愭鍙瀵硅
+                //1.鍒濆鍖朙COpenSDK_Api
+                LCApiKit.SharedInstance().InitSDKOpenApi(mESVideoInfo.Lc_AccessToken);
+                LCApiKit.SharedInstance().CurrentDevicePlayToken = mESVideoInfo.Lc_PlayToken;
+                LCApiKit.SharedInstance().CurrentDeviceId = mESVideoInfo.Lc_DeviceId;
+                LCApiKit.SharedInstance().CurrentDeviceName = mESVideoInfo.DeviceName;
+                LCApiKit.SharedInstance().CurrentPsk = mESVideoInfo.Lc_DeviceId;
+                //2.璋冩暣鐩戣椤甸潰
+                LCOnMonitorViewController vc = new LCOnMonitorViewController();
+                mOnLCCallDelegate = new OnLCCallDelegate(this);
+                vc.MLCCallDelegate = mOnLCCallDelegate;
+                //vc.MLCCallDelegate = new OnLCCallDelegate(this);
+                Shared.Application.currentVC.NavigationController.PushViewController(vc, true);
+            }
+            else
+            {
+
+                ESOnMonitorViewController vc = new ESOnMonitorViewController();
+                vc.MESVideoID = mESVideoInfo.ESVideoUUID;
+                vc.MESRoomID = roomID;
+                vc.DeviceName = mESVideoInfo.DeviceName;
+                //vc.RoomName = mESVideoInfo.RoomName;
+                //vc.MESCallDelegate = new OnESCallDelegate(this);
+                Shared.Application.currentVC.NavigationController.PushViewController(vc, true);
+            }
+#else
+            Intent intent = null;
+            if (interphoneType == "IMOUVISIAL")
+            {
+                intent = new Intent(Shared.Application.Activity, typeof(HDL_ON_Android.LeChengVideoActivity));
+            }
+            else
+            {
+                intent = new Intent(Shared.Application.Activity, typeof(HDL_ON_Android.VideoActivity));
+            }
+
             intent.PutExtra("ESVideoUUID", mESVideoInfo.ESVideoUUID);
             intent.PutExtra("uuid", mESVideoInfo.uuid);
             intent.PutExtra("DeviceName", mESVideoInfo.DeviceName);
             intent.PutExtra("cmtID", mESVideoInfo.cmtID);
             intent.PutExtra("roomno", mESVideoInfo.roomno);
             intent.PutExtra("unitno", mESVideoInfo.unitno);
-            //intent.PutExtra("HomeID", mESVideoInfo.HomeID);
+            intent.PutExtra("HomeID", PirSend.HomeId);
             intent.PutExtra("callId", mESVideoInfo.callId);
             intent.PutExtra("Type", 0);
+
+            //=========涔愭==========
+            intent.PutExtra("AccessToken", mESVideoInfo.Lc_AccessToken);
+            intent.PutExtra("DeviceId", mESVideoInfo.Lc_DeviceId);
+            intent.PutExtra("Location", OnAppConfig.Instance.RequestHttpsHost.Contains("China") ? 0 : 1);//濡傛灉鍩熷悕鍖呭惈china锛屽垯鏄浗鍐呰处鍙�);
+            intent.PutExtra("PlayToken", mESVideoInfo.Lc_PlayToken);
+            intent.PutExtra("Psk", mESVideoInfo.Lc_Psk);
+
             Shared.Application.Activity.StartActivity(intent);
 
 #endif
         }
-
-
 
         /// <summary>
         /// 琚懠鍙〉闈�
         /// </summary>
-        /// <param name="mESVideoInfo">涓版灄鍛煎彨鍔熻兘鎵�闇�鐩稿叧鍙傛暟</param>
-        public void ShowESvideoVideoIntercom(ESVideoInfo mESVideoInfo)
+        /// <param name="mESVideoInfo"></param>
+        public void ShowESvideoVideoIntercom(ESVideoInfo mESVideoInfo, string interphoneType)
         {
             this.esVideoInfo = mESVideoInfo;
-#if __IOS__
             int roomID = 0;
             int.TryParse(mESVideoInfo.roomno, out roomID);
-            ESOnIntercomViewController vc = new ESOnIntercomViewController();
-            vc.MESVideoID = mESVideoInfo.ESVideoUUID;
-            vc.MESRoomID = roomID;
-            vc.DeviceName = mESVideoInfo.DeviceName;
-            //vc.RoomName = mESVideoInfo.RoomName;
-            //vc.MESCallDelegate = new OnESCallDelegate(this);
-            mOnESCallDelegate = new OnESCallDelegate(this);
-            vc.MESCallDelegate = mOnESCallDelegate;
-            Shared.Application.currentVC.NavigationController.PushViewController(vc, true);
-#else
+#if __IOS__
+            if (interphoneType == "IMOUVISIAL")
+            {
+                //涔愭鍙瀵硅
+                //1.鍒濆鍖朙COpenSDK_Api
+                LCApiKit.SharedInstance().InitSDKOpenApi(mESVideoInfo.Lc_AccessToken);
+                //2021-05-18 鐩墠鎺ㄩ�佺殑PlayToken;鏈夐棶棰樹細瀵艰嚧SDK宕╂簝锛屾殏鏃朵笉浼�
+                //LCApiKit.SharedInstance().CurrentDevicePlayToken = mESVideoInfo.Lc_PlayToken;
+                LCApiKit.SharedInstance().CurrentDeviceId = mESVideoInfo.Lc_DeviceId;
+                LCApiKit.SharedInstance().CurrentDeviceName = mESVideoInfo.DeviceName;
+                LCApiKit.SharedInstance().CurrentPsk = mESVideoInfo.Lc_DeviceId;
+                //2.璺宠浆涔愭鍛煎彨椤甸潰
+                LCOnIntercomViewController vc = new LCOnIntercomViewController();
+                mOnLCCallDelegate = new OnLCCallDelegate(this);
+                vc.MLCCallDelegate = mOnLCCallDelegate;
+                //vc.MLCCallDelegate = new OnLCCallDelegate(this);
+                Shared.Application.currentVC.NavigationController.PushViewController(vc, true);
+            }
+            else
+            {
 
-            Intent intent = new Intent(Shared.Application.Activity, typeof(HDL_ON_Android.VideoActivity));
+                ESOnIntercomViewController vc = new ESOnIntercomViewController();
+                vc.MESVideoID = mESVideoInfo.ESVideoUUID;
+                vc.MESRoomID = roomID;
+                vc.DeviceName = mESVideoInfo.DeviceName;
+                //vc.RoomName = mESVideoInfo.RoomName;
+                //vc.MESCallDelegate = new OnESCallDelegate(this);
+                mOnESCallDelegate = new OnESCallDelegate(this);
+                vc.MESCallDelegate = mOnESCallDelegate;
+                Shared.Application.currentVC.NavigationController.PushViewController(vc, true);
+            }
+#else
+            #region
+
+            Intent intent = null;
+            if (interphoneType == "IMOUVISIAL")
+            {
+                intent = new Intent(Shared.Application.Activity, typeof(HDL_ON_Android.LeChengVideoActivity));
+            }
+            else
+            {
+                intent = new Intent(Shared.Application.Activity, typeof(HDL_ON_Android.VideoActivity));
+            }
+
             intent.PutExtra("ESVideoUUID", mESVideoInfo.ESVideoUUID);
             intent.PutExtra("uuid", mESVideoInfo.uuid);
             intent.PutExtra("DeviceName", mESVideoInfo.DeviceName);
             intent.PutExtra("cmtID", mESVideoInfo.cmtID);
             intent.PutExtra("roomno", mESVideoInfo.roomno);
             intent.PutExtra("unitno", mESVideoInfo.unitno);
-            //intent.PutExtra("HomeID", mESVideoInfo.HomeID);
+            intent.PutExtra("HomeID", PirSend.HomeId);
             intent.PutExtra("callId", mESVideoInfo.callId);
             intent.PutExtra("Type", 1);
+
+            //=========涔愭==========
+            intent.PutExtra("AccessToken", mESVideoInfo.Lc_AccessToken);
+            intent.PutExtra("DeviceId", mESVideoInfo.Lc_DeviceId);
+            intent.PutExtra("Location", OnAppConfig.Instance.RequestHttpsHost.Contains("China") ? 0 : 1);//濡傛灉鍩熷悕鍖呭惈china锛屽垯鏄浗鍐呰处鍙�);
+            intent.PutExtra("PlayToken", mESVideoInfo.Lc_PlayToken);
+            intent.PutExtra("Psk", mESVideoInfo.Lc_Psk);
+
             Shared.Application.Activity.StartActivity(intent);
 
+            #endregion
 #endif
         }
 
-        #region 鍔ㄤ綔鍥炶皟锛屾彁浜よ褰曞埌浜戠
+        #region 鍔ㄤ綔鍥炶皟鍜屽師鐢熶氦浜掞紝鎻愪氦璁板綍鍒颁簯绔�
 
         /// <summary>
         /// 鍒ゆ柇callId鏄惁涓虹┖
@@ -188,7 +264,7 @@
                 }
                 else
                 {
-                    Utlis.WriteLine("POST 鎸傛柇澶辫触 code: "+ revertObj.Code);
+                    Utlis.WriteLine("POST 鎸傛柇澶辫触 code: " + revertObj.Code);
                 }
 
             })
@@ -262,6 +338,7 @@
         }
 
         DateTime UnlockDateTime = DateTime.MinValue;
+
         /// <summary>
         /// 寮�閿佹垚鍔�
         /// </summary>
@@ -272,9 +349,9 @@
             if (CheckESVideoInfoIsNullOrEmpty()) return;
 
             //3S鍐呬笉鍏佽瑙﹀彂绗簩娆�
-            if(UnlockDateTime.AddSeconds(3) > DateTime.Now)
+            if (UnlockDateTime.AddSeconds(3) > DateTime.Now)
             {
-               
+
                 Utlis.WriteLine("3S鍐呬笉鍏佽瑙﹀彂绗簩娆�");
                 //涓版灄SDKbug锛屽懠鍙殑鏃跺�欏紑閿佹垚鍔熶細鏈�2娆″洖璋冿紝
                 return;
@@ -302,6 +379,77 @@
             { IsBackground = false }.Start();
         }
 
+        #endregion
+
+        #region 鐜嬭耽鏂版帴鍚拰寮�閿佹帴鍙�
+        /// <summary>
+        /// 寮�閿�
+        /// </summary>
+        void HDLUnlockAction()
+        {
+            //Utlis.WriteLine("UnlockAction");
+
+            if (esVideoInfo == null) return;
+
+            new Thread(() =>
+            {
+                Dictionary<string, object> dic = new Dictionary<string, object>();
+                dic.Add("deviceId", esVideoInfo.Lc_DeviceId);//璁惧id
+                dic.Add("callId", esVideoInfo.callId);
+                var requestJson = HttpUtil.GetSignRequestJson(dic);
+                var revertObj = HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_VideoDevice_OpenDoorbell, requestJson);
+                if (revertObj.Code == StateCode.SUCCESS)
+                {
+                    Application.RunOnMainThread(() =>
+                    {
+#if __IOS__
+                        //鍜屽師鐢熺洃鎺х晫闈氦浜掋�佸彂閫佸紑閿佹垚鍔熼�氱煡
+                        NSNotificationCenter.DefaultCenter.PostNotificationName("lcCallDelegateOpenDoorSuccess", null);
+#endif
+                    });
+                }
+                else
+                {
+                    Utlis.WriteLine("POST 寮�閿佸け璐� code: " + revertObj.Code);
+                }
+
+            })
+            { IsBackground = false }.Start();
+        }
+
+        /// <summary>
+        /// 鏇存敼閫氳瘽鐘舵��
+        /// </summary>
+        void HDLUpdateCallStatus(CallStatusType callStatusType, InterphoneType interphoneType, int callDuration = 0) {
+
+            if (CheckESVideoInfoIsNullOrEmpty()) return;
+
+            new Thread(() =>
+            {
+                Dictionary<string, object> dic = new Dictionary<string, object>();
+                dic.Add("callId", esVideoInfo.callId);//鍛煎彨id
+                dic.Add("callStatus", callStatusType.ToString());//鍙敤鍊�:MISSED,RECEIVED,REJECT
+                dic.Add("interphoneTypeEnum", interphoneType.ToString());//鍙敤鍊�:FLVI,IMOUVISIAL
+                if (callStatusType == CallStatusType.RECEIVED && callDuration > 0)
+                {
+                    dic.Add("callDuration", callDuration);//閫氳瘽鏃堕暱锛堢锛�
+                }
+
+                var requestJson = HttpUtil.GetSignRequestJson(dic);
+                var revertObj = HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_VideoDevice_UpdateCallStatus, requestJson);
+                if (revertObj.Code == StateCode.SUCCESS)
+                {
+
+                }
+                else
+                {
+                    Utlis.WriteLine("POST 鏇存柊鐘舵�佸け璐� code: " + revertObj.Code);
+                }
+
+            })
+            { IsBackground = false }.Start();
+
+        }
         #endregion
 
 #if __IOS__
@@ -379,7 +527,77 @@
 
         }
 
-#endregion
+        #endregion
+
+        #region OnLCCallDelegate
+        /////// <summary>
+        /////// OnLCCallDelegate 缁ф壙鍝嶅簲浜嬩欢
+        /////// </summary>
+        OnLCCallDelegate mOnLCCallDelegate;
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public class OnLCCallDelegate : LCCallDelegate
+        {
+
+            [Weak] ESOnVideo _ESOnVideo;
+
+            public OnLCCallDelegate(ESOnVideo mESOnVideo)
+            {
+                _ESOnVideo = mESOnVideo;
+            }
+
+            /// <summary>
+            /// 鎺ュ惉
+            /// </summary>
+            public override void OnAnswerAction()
+            {
+                _ESOnVideo.HDLUpdateCallStatus(CallStatusType.RECEIVED, InterphoneType.IMOUVISIAL);
+            }
+
+            /// <summary>
+            /// 鎸傛柇
+            /// </summary>
+            /// <param name="callDuration"></param>
+            public override void OnHangUpAction(int callDuration)
+            {
+                _ESOnVideo.HDLUpdateCallStatus(CallStatusType.RECEIVED, InterphoneType.IMOUVISIAL, callDuration);
+            }
+
+            /// <summary>
+            /// 鎷掓帴
+            /// </summary>
+            public override void OnRejectCallAction()
+            {
+                _ESOnVideo.HDLUpdateCallStatus(CallStatusType.REJECT, InterphoneType.IMOUVISIAL);
+            }
+
+            /// <summary>
+            /// 鎴浘鎴愬姛
+            /// </summary>
+            /// <param name="image"></param>
+            public override void OnScreenshotSuccessfulAction(UIImage image)
+            {
+                ////NSData imageData = UIImagePNGRepresentation(image); UIImage
+                //NSData imageData = image.AsPNG();
+                //byte[] dataBytes = new byte[imageData.Length];
+                //System.Runtime.InteropServices.Marshal.Copy(imageData.Bytes, dataBytes, 0, Convert.ToInt32(imageData.Length));
+                ////image.g
+                ////_ESOnVideo.ScreenshotSuccessfulAction(dataBytes);
+            }
+
+            /// <summary>
+            /// 寮�閿佹垚鍔�
+            /// </summary>
+            public override void OnUnlockAction()
+            {
+                _ESOnVideo.HDLUnlockAction();
+            }
+
+        }
+
+        #endregion
 #endif
 
         /// <summary>
@@ -392,23 +610,23 @@
             {
                 DeviceName = "瀹ゅ鏈�88",
                 ESVideoUUID = "JJY000019VPLLF",
-                 
+
             };
             if (isMonitor)
             {
-                ShowESVideoMonitor(eSVideoInfo);
+                ShowESVideoMonitor(eSVideoInfo, "");
             }
             else
             {
                 eSVideoInfo.callId = "88888";
-                ShowESvideoVideoIntercom(eSVideoInfo);
+                ShowESvideoVideoIntercom(eSVideoInfo, "");
             }
 
         }
     }
 
     /// <summary>
-    /// 涓版灄鐩戣鍜屽懠鍙姛鑳芥墍闇�鐩稿叧鍙傛暟
+    /// 鍙瀵硅鍙傛暟瀵硅薄锛堜粎鍦ㄦ渶鍚庝竴姝ヨ烦杞埌activity鏃舵墠璋冪敤,涓轰簡鍋氬吋瀹硅繖閲岄兘鏁版嵁鏈夌偣涔憋紝浠ュ悗鏈夋椂闂村啀鐞嗛『鎬濊矾浼樺寲锛�
     /// </summary>
     public class ESVideoInfo
     {
@@ -447,9 +665,68 @@
         /// </summary>
         public string callId = string.Empty;
 
+
+        //========================澶у崕==========================
+
+        /// <summary>
+        /// 璐﹀彿accessToken
+        /// </summary>
+        public string Lc_AccessToken = string.Empty;
+
+        /// <summary>
+        /// 璁惧搴忓垪鍙凤紝閫氳蹇呰瀛楁
+        /// </summary>
+        public string Lc_DeviceId = string.Empty;
+
+        /// <summary>
+        /// 澶囨敞锛燂紵锛�
+        /// </summary>
+        public string Lc_Psk = string.Empty;
+
+        /// <summary>
+        /// 棰勮鐢婚潰蹇呴』浣跨敤
+        /// </summary>
+        public string Lc_PlayToken = string.Empty;
+
+        /// <summary>
+        /// 璐﹀彿鏍囪锛�0鍥藉唴锛�1鍥藉锛涘浗鍐呭浗澶栬闂兘鍦板潃涓嶄竴鏍�
+        /// </summary>
+        public int Lc_Location = 0;
+
     }
 
-    
 
+    /// <summary>
+    /// 閫氳瘽鐘舵�佺被鍨�
+    /// </summary>
+    public enum CallStatusType
+    {
+        /// <summary>
+        /// 鏈帴
+        /// </summary>
+        MISSED,
+        /// <summary>
+        /// 宸叉帴鍚�
+        /// </summary>
+        RECEIVED,
+        /// <summary>
+        /// 鎷掓帴
+        /// </summary>
+        REJECT,
+    }
 
+    /// <summary>
+    /// 鍙瀵硅璁惧骞冲彴绫诲瀷
+    /// </summary>
+    public enum InterphoneType
+    {
+        /// <summary>
+        /// 涓版灄骞冲彴
+        /// </summary>
+        FLVI,
+        /// <summary>
+        /// 澶у崕鍙瀵硅骞冲彴
+        /// </summary>
+        IMOUVISIAL,
+    }
 }
diff --git a/HDL_ON/Entity/FunctionList.cs b/HDL_ON/Entity/FunctionList.cs
index b5622b0..1f2fe17 100644
--- a/HDL_ON/Entity/FunctionList.cs
+++ b/HDL_ON/Entity/FunctionList.cs
@@ -101,6 +101,7 @@
             return Functions.FindAll((obj) => spkList.Contains(obj.spk));
         }
     
+      
         /// <summary>
         /// 绾㈠瀹濆垪琛�
         /// </summary>
@@ -127,7 +128,7 @@
         public List<Function> GetEnvirSensorsList()
         {
             var spkList = SPK.EnvironSpkList();
-            return Functions.FindAll((obj) => spkList.Contains(obj.spk));
+            return Functions.FindAll((obj) => spkList.Contains(obj.spk));
         }
         /// <summary>
         /// 瀹夐槻璁惧鍒楄〃
@@ -139,9 +140,10 @@
         }
 
         /// <summary>
-        /// 鍙瀵硅鍒楄〃
+        /// 鍙瀵硅鍒楄〃,褰撲负null鎴杝ize涓�0鍒欎笉鏄剧ず鍙瀵硅icon
         /// </summary>
-        public UI.UI2.FuntionControlView.Video.VideoClouds videoIntercom;
+        // public UI.UI2.FuntionControlView.Video.VideoClouds videoIntercom;
+        public List<UI.UI2.FuntionControlView.Video.Video> videoIntercom = new List<UI.UI2.FuntionControlView.Video.Video>();
 
         List<Function> _OtherBrandFunction;
         /// <summary>
@@ -200,23 +202,23 @@
                 //{
                 //    UI.Music.A31MusicModel.A31MusicModelList.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<UI.Music.A31MusicModel>(functionDataString));
                 //}
-                if (checkRepeat == true)
-                {
-                    //妫�娴嬮噸澶�
-                    for (int i = 0; i < Functions.Count; i++)
-                    {
-                        if (Functions[i].deviceId == tempFunction.deviceId)
-                        {
-                            //鍏堢Щ闄ゆ帀鍐嶅姞
-                            Functions.RemoveAt(i);
-                            Functions.Add(tempFunction);
-                            return;
-                        }
-                    }
+                if (checkRepeat == true)
+                {
+                    //妫�娴嬮噸澶�
+                    for (int i = 0; i < Functions.Count; i++)
+                    {
+                        if (Functions[i].deviceId == tempFunction.deviceId)
+                        {
+                            //鍏堢Щ闄ゆ帀鍐嶅姞
+                            Functions.RemoveAt(i);
+                            Functions.Add(tempFunction);
+                            return;
+                        }
+                    }
                 }
                 Functions.Add(tempFunction);
             }
-            else if (filePath.StartsWith("SceneData_"))
+            if (filePath.StartsWith("SceneData_"))
             {
                 var sceneDataBytes = FileUtlis.Files.ReadFile(filePath);
                 var sceneDataString = System.Text.Encoding.UTF8.GetString(sceneDataBytes);
@@ -347,6 +349,7 @@
                 List.scenes.Remove(scene);
             }
         }
+
         /// <summary>
         /// 鍒犻櫎鏈湴鍔熻兘鍙婃枃浠�
         /// </summary>
@@ -464,6 +467,7 @@
             })
             { IsBackground = true }.Start();
         }
+
         #region 鍦烘櫙鐩稿叧
         /// <summary>
         /// 娣诲姞鍦烘櫙
diff --git a/HDL_ON/HDL_ON.projitems b/HDL_ON/HDL_ON.projitems
index 5c7d4dd..43f2613 100644
--- a/HDL_ON/HDL_ON.projitems
+++ b/HDL_ON/HDL_ON.projitems
@@ -9,22 +9,9 @@
     <Import_RootNamespace>HDL_ON</Import_RootNamespace>
   </PropertyGroup>
   <ItemGroup>
-    <Compile Include="$(MSBuildThisFileDirectory)UI\BindingResidence\WellcomToHomeForm.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\MainPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\FileUtils.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Common\R.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\Mqtt\MqttInfoConfig.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\Server\HttpServerRequest.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\ResponseEntity\RegionInfoRes.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\ResponseEntity\ResponsePack.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Enumerative\EmptyHttpReques.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\Server\HttpServerRequestBase.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Room.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Enumerative\Command.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Enumerative\MyEnum.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\DB_ResidenceData.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\Function.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\PublicAssmebly.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\BindingResidence\BindingResidencePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\BindingResidence\WellcomToHomeForm.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\CSS\CSS.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Common\CommonClass.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Controls\BottomControls\BottomDateSelectControl.cs" />
@@ -54,100 +41,28 @@
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\UserPageBLL.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\UserPage.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\2-Classification\ClassificationPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\2-Classification\RoomPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\2-Classification\FunctionPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\2-Classification\FunctionControlZoneBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\2-Classification\FunctionPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\2-Classification\FunctionControlZone.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\2-Classification\RoomPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\2-Classification\ClassificaitionPublicBLL.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\2-Classification\ClassificationPageBLL.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\FunctionBaseInfoSetPage.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ChooseFloorPage.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\FunctionBaseInfoSetPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ChooseRoomPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Curtain\MotorCurtainPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\DimmerPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\RelayPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\RGBPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\RGBPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\RelayPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\1-HomePage\HomePageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\1-HomePage\HomePage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PersonalCenterPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PersonalDataPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PersonalCenterPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PersonalDataPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\RoomEditPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\RoomEditFunctionPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\RoomEditPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\ResidentialManagePage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\RoomEditFunctionPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\RoomsManagementPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\FloorsManagementPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\FloorsManagementPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\ResidentialManagePageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\RoomsManagementPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\LoginPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\ForgetPasswordPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\LoginPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\ForgetPasswordPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\ResetPassword_VerificationCode.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\RegisterPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\BaseView.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\RegisterPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\PublicAssmeblyBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\TopViewDiv.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\TopViewDivBLL.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ChooseRoomPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\DimmerPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Curtain\MotorCurtainPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Curtain\CurtainModulePage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Curtain\CurtainModulePageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Curtain\RollingShutterPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Curtain\RollingShutterPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\AC\ACPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\AC\ACPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\2-Classification\FunctionPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\2-Classification\FunctionPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\2-Classification\FunctionControlZone.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\2-Classification\FunctionControlZoneBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\2-Classification\RoomPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\2-Classification\RoomPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\2-Classification\ClassificaitionPublicBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\Scene.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\FunctionList.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\AC.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\Curtain.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\FloorHeating.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\Light.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\ResponseEntity\CityInfo.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\UnlockSetting\AppUnlockSettingsPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\UnlockSetting\AppUnlockSettingsPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\UnlockSetting\AppUnlockPasswordPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\OperationSuccessPromptPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\UnlockSetting\AppUnlockGesturePage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\AppUnlockPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\FoolHeating\FloorHeatingPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\FoolHeating\FloorHeatingPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\FanPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\Fan.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\SwitchSocket.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\FanPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\SocketPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\SocketPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\TV.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\TVPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\TVPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\EnvironmentalScience\EnvironmentalSciencePage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\Sensor.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\EnvironmentalScience\EnvironmentalSciencePageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\EnvironmentalScience\EnvironmentalSensorPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\MemberManagementPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\ResponseEntity\ResidenceMemberInfo.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\MemberManagementPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\MemberPermissionPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\MemberFunctionPermissionPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\AProtocolEntity.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\MemberPermissionPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\AddMemberScanPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\AddMemberScanPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\MemberFunctionPermissionPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\FunctionBasePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ChooseRoomPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmSensor\SensorWaterImmersionPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmSensor\SensorDoorWinwsPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmSensor\SensorSmokePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmSensor\SensorPirPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmSensor\ArmSensorHistroyPaging.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Music\MusicMain.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Music\A31Radio.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Music\UpdateThread.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Music\A31RadioList.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Music\A31MusicModel.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Music\A31MusicSourcePage.cs" />
@@ -169,143 +84,237 @@
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Music\View\TipView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Music\View\MusicSourceView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Music\View\SongView.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\ChooseShareMemberTargetListPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\ChooseShareMemberTargetListPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AccountBindInfo\AccountBindInfoPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AccountBindInfo\ChangeBindAccountPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AccountBindInfo\ChangeBindVerificationCodePage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AccountBindInfo\BindAccountPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\EnvironmentalScience\EchartsOption.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\ResetAccountPassword\ResetPasswordOptionPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\ResetAccountPassword\ResetPasswordVerificationCodePage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\ResetAccountPassword\ResetPasswordPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Music\UpdateThread.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Music\View\MyListView.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\UpdataSidDataDialog.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\IntelligencePage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\GalleryPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Scene\NewSceneMenuListPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Scene\SceneEditPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Scene\SceneFunctionListChoosePage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Scene\SetSceneFunctionInfoPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Scene\SetSceneLocationPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\TuyaFanPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\ClothesHangerPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\FanPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\ClothesHangerSetTimePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\TuyaWeepRobotConsumablesMagPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\TVPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\IrLearnPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\TVPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\TuyaWeepRobotHistoryPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\TuyaWaterValvePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\SocketPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\SocketPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\TuyaWeepRobotPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\TuyaAirCleanerPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\FanPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Video\VideoMainView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Video\VideoMethod.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Video\VideoSend.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Video\ObjectClass.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Video\View\ShowDialog.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Video\View\FrameLayout60.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Video\View\FrameLayout50.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\AC\ACPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\AC\ACPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\FoolHeating\FloorHeatingPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\FoolHeating\FloorHeatingPage.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Panel\PanelPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\SearchDevice\SearchDevicePage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\SearchDevice\VoicePanelScenePage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Device\DeviceModule.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Device\SBK_SceneListObj.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\SearchDevice\VoicePanelSettingPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\SearchDevice\VoicePanelSceneListPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\Server\NewAPI.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\Server\HttpUtil.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Common\Utlis.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\Server\IMessageCommon.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\Server\NewApiRes.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AccountBindInfo\NewBindAccountPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AccountBindInfo\NewBindVerificationCodePage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Common\HDLCommon.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Common\Constant.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\TextButton.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\SelectServerDialog.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\Control.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\Control_TcpClient.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\Control_TcpServer.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\Control_Udp.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\CRC.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\Packet.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\Target.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\UdpSocket.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\A_Protocol_Common.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)DAL\Mqtt\MqttClient.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MyQRCodePage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\ListCellView.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\UpdateTipDialog.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MyServerInfoPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AboutOn\AboutOnPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AboutOn\FunctionIntroductionPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AboutOn\ComplaintsPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\EmptyTipView.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\LineView.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\ConfirmDialog.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\WebViewDialog.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\GetSupport\FAQHelpPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\ListIconCellView.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\GetSupport\QuestionListPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\GetSupport\GetSupportPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\Transfer\TransferConfirmPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\ConfirmButton.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\Transfer\AdminMigrationConfirmPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\Transfer\TransferInputPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\Transfer\TransferUserConfirmPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\1ContorlPage\AirFreshControlPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\1ContorlPage\AcControlPage_AddIrButton.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\1ContorlPage\AcControlPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\1ContorlPage\TvControlPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\1ContorlPage\FhControlPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Curtain\MotorCurtainPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Curtain\RollingShutterPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Curtain\MotorCurtainPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Curtain\CurtainModulePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Curtain\RollingShutterPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Curtain\CurtainModulePageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Energy\EnergyMainPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Energy\EchartsOption_Energy.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\EnvironmentalScience\EnvironmentalSciencePageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\EnvironmentalScience\EnvironmentalSciencePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\EnvironmentalScience\EchartsOption_Pie.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\EnvironmentalScience\EchartsOption.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\EnvironmentalScience\EnvironmentalPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\EnvironmentalScience\EnvironmentalSensorPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\ColorTureLampPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\ColorTureLampPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\DimmerPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\DimmerPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\RelayPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\RGBPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\RGBPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\RelayPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\1-HomePage\HomePageBLL.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\1-HomePage\MessageCenterPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\MenuButton.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\RoomGalleryPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\AddInputType.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\AddLogic.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\AddTarget.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\1-HomePage\HomePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\IntelligencePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\Send.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\FunTpye.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\InpOrOutLogicMethod.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\Logic.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicMethod.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\MainView.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\Set.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\OutdoorEnvironment.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\Weather.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\ConditionDeviceFunList.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\TimeTpye.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\Logic.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\PublicInterface.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\MainView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicMethod.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\Time3.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\AddLogic.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\Set.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\WeatherCondition.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\TargetDeviceFunList.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\InpOrOutLogicMethod.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\SpeciaTime.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\AddTarget.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\AddInputType.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\FunAllAreaView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\DateView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\AreaView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\MonView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\LogicAddView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\FunTypeView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\TopView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\SelectTypeView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\SwitchView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\TemperatureView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\LogicTypeTitleView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\TimeView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\TimeHorizonView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\TextSize.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\AddOutputInputView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\TipPopView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\brightnessView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\AddOutputInputTextView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\SaveView.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\SingleLogicView.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\Send.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Common\ImageUtlis.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\ConditionDeviceFunList.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\TargetDeviceFunList.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\FunTypeView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\CheckView.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Common\FileUtlis.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\SingleLogicView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Scene\CatchSceneAddPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Scene\SceneEditPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Scene\SceneAddPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Scene\SetSceneFunctionInfoPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Scene\NewSceneMenuListPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Scene\SetSceneLocationPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Scene\SceneFunctionListChoosePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Scene\CatchSceneCatchFunctionListPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PersonalCenterPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PersonalDataPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MyServerInfoPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PersonalCenterPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PersonalDataPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MyQRCodePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\GetSupport\GetSupportPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\GetSupport\FAQHelpPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\GetSupport\QuestionListPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\AddControl.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\PirMain.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\Pir.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\PirSend.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\Matching.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\SetPir.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\BrandList.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\EditControl.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\Method.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\AddControlComplete.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\AddButton.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\BrandListView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\PatchView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\TopView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\HeigthChangeView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\PirNameView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\MainView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\ControlView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\FailView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\PirView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\TipView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\ReplicationView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\FrameLayout50.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\SaveView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\Buttons.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AccountBindInfo\NewBindVerificationCodePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AccountBindInfo\NewBindAccountPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AccountBindInfo\BindAccountPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AccountBindInfo\AccountBindInfoPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AccountBindInfo\ChangeBindAccountPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AccountBindInfo\ChangeBindVerificationCodePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\ResetAccountPassword\ResetPasswordOptionPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\ResetAccountPassword\ResetPasswordPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\ResetAccountPassword\ResetPasswordVerificationCodePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\SearchDevice\SearchDevicePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\SearchDevice\VoicePanelSceneListPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\SearchDevice\VoicePanelSettingPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\SearchDevice\VoicePanelScenePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\RoomEditPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\RoomEditFunctionPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\RoomEditPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\ResidentialManagePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\RoomEditFunctionPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\RoomsManagementPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\FloorsManagementPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\FloorsManagementPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\ResidentialManagePageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\RoomsManagementPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\Transfer\TransferInputPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\Transfer\TransferConfirmPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\Transfer\AdminMigrationInputPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\Transfer\AdminMigrationConfirmPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\Transfer\TransferUserConfirmPage.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\AddRoom\AddRoomPage.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\RoomListManage\AddRoom\RoomBinglingFloorPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\BindingResidence\BindingResidencePage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Common\DB_AccountList.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\PublicInterface.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Common\OnAppConfig.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Common\UserInfo.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Scene\SceneAddPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\SelectPopupDialog.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Common\Utlis\FloorSelectPopupDialog.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\ColorTureLampPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\ColorTureLampPageBLL.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Common\Utlis\FloorRoomSelectPopupView.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\BrightnessView.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Common\ApiUtlis.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\TemperatureView.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\DiySelectPopupDialog.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\ListCellDialog.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\SpeciaTime.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\Time3.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\Weather.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\OutdoorEnvironment.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\WeatherCondition.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\1-test-\TestDialog.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\MemberFunctionPermissionPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\MemberFunctionPermissionPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\AddMemberScanPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\ChooseShareMemberTargetListPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\MemberManagementPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\MemberPermissionPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\AddMemberScanPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\MemberManagementPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\MemberPermissionPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\ChooseShareMemberTargetListPage.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddFunction\ThirdPartyBrandListPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddFunction\AddDevciePage.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddFunction\AddThirdPartyBrandListpage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Integratedbrand\IntegratedBrand.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\AirCleaner.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\WeepRobot.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\TuyaAirCleanerPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\TuyaFanPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\TuyaWeepRobotPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddFunction\DeviceListPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddFunction\BrandListPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\UnlockSetting\AppUnlockGesturePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\UnlockSetting\AppUnlockSettingsPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\UnlockSetting\AppUnlockSettingsPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\UnlockSetting\AppUnlockPasswordPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddDevice\AddMiniRemoteControlDirection3Page.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddDevice\AddMiniRemoteControlDirection1Page.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddDevice\AddMiniRemoteControlDirection2Page.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddDevice\AddMiniRemoteControlDirection4Page.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddDevice\AddThirdPartyDeviceMenuListPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AboutOn\FunctionIntroductionPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AboutOn\AboutOnPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AboutOn\ComplaintsPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\1-test-\TestDialog.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\LoginPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\ForgetPasswordPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\LoginPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\ForgetPasswordPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\ResetPassword_VerificationCode.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\RegisterPageBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\BaseView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\RegisterPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI1-Login\SelectServerDialog.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\TopViewDivBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\RoomGalleryPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\DiySelectPopupDialog.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\PublicAssmebly.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\AppUnlockPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\OperationSuccessPromptPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\UpdataSidDataDialog.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\PublicAssmeblyBLL.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\GalleryPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\TopViewDiv.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\ListIconCellView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\TextButton.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\WebViewDialog.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\IconTipDialog.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\SelectPopupDialog.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\ConfirmButton.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\ListCellDialog.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\MenuButton.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\EmptyTipView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\UpdateTipDialog.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\ListCellView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\ConfirmDialog.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\LineView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Resourse\HdlControlResourse.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Form\HideOptionDirectoryListForm.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Form\HideOptionSearchAllFile.cs" />
@@ -318,7 +327,11 @@
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Logic\HdlThreadLogic.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Logic\HdlDeviceStatuPushLogic.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Logic\HdlMessageLogic.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Logic\HdlCloudReceiveLogic.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Logic\HdlFormLogic.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Logic\HdlBluetoothIOSLogic.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Logic\HdlWifiLogic.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Logic\HdlBluetoothAndroidLogic.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Controls\BottomControls\BottomItemEditorControl.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Controls\BottomControls\BottomDialogCommon.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Controls\BottomControls\BottomTimeSelectControl.cs" />
@@ -345,21 +358,15 @@
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Controls\ListViewLayoutControls\VerticalFrameRefreshControl.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Controls\ListViewLayoutControls\VerticalFrameControl.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Controls\CompoundControls\DialogTitleMenuControl.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Controls\CompoundControls\ProgressRowBar.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Controls\CompoundControls\NormalSelectControl.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Controls\CompoundControls\DirectionImageControl.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Controls\CompoundControls\SeekBarImageControl.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Controls\CompoundControls\BatteryPersentControl.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Controls\CompoundControls\FanGearSeekBarControl.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Controls\CompoundControls\ProgressBar.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\TuyaWaterValvePage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Stan\Controls\CompoundControls\BatteryPersentControl.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\TuyaWeepRobotConsumablesMagPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\TuyaWeepRobotHistoryPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\ClothesHangerPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\FunctionBasePage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmSensor\SensorPirPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmSensor\SensorWaterImmersionPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmSensor\SensorDoorWinwsPage.cs" />
-    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmSensor\SensorSmokePage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Enumerative\MyEnum.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Enumerative\Command.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Entity\Enumerative\ClothsHangerEnum.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\PirMain.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\PirDevice\View\TopView.cs" />
@@ -435,29 +442,63 @@
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AddDevice\SenesorMegahealth\SenesorMegahealthManagerPage.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\ArmSensor\SenesorMegahealthPage.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\IrFanPage.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Enumerative\EmptyHttpReques.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Integratedbrand\IntegratedBrand.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\AirCleaner.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\Scene.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\AC.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\Sensor.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\Curtain.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\FloorHeating.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\Fan.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\Light.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\SwitchSocket.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\Function.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\WeepRobot.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Function\TV.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\ResponseEntity\RegionInfoRes.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\ResponseEntity\ResidenceMemberInfo.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\ResponseEntity\ResponsePack.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\ResponseEntity\CityInfo.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\FileUtils.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\ThirdPartySdk\ESOnVideo.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\Server\IMessageCommon.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\Server\NewAPI.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\Server\HttpUtil.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\Server\HttpServerRequest.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\Server\NewApiRes.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\Server\HttpServerRequestBase.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\Control.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\A_Protocol_Common.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\CRC.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\Control_TcpClient.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\Control_Udp.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\Control_TcpServer.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\Packet.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\Target.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\UdpSocket.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\Mqtt\MqttClient.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)DAL\Mqtt\MqttInfoConfig.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Common\ApiUtlis.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Common\ImageUtlis.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Common\Utlis.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Common\R.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Common\OnAppConfig.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Common\DB_AccountList.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Common\Constant.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Common\FileUtlis.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Common\UserInfo.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Common\HDLCommon.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Common\Utlis\FloorSelectPopupDialog.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Common\Utlis\FloorRoomSelectPopupView.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\AProtocolEntity.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\DB_ResidenceData.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\FunctionList.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Room.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Device\DeviceModule.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Entity\Device\SBK_SceneListObj.cs" />
   </ItemGroup>
   <ItemGroup>
-    <Folder Include="$(MSBuildThisFileDirectory)DAL\" />
-    <Folder Include="$(MSBuildThisFileDirectory)DAL\Mqtt\" />
-    <Folder Include="$(MSBuildThisFileDirectory)Common\" />
-    <Folder Include="$(MSBuildThisFileDirectory)DAL\Server\" />
-    <Folder Include="$(MSBuildThisFileDirectory)Entity\" />
-    <Folder Include="$(MSBuildThisFileDirectory)Entity\ResponseEntity\" />
-    <Folder Include="$(MSBuildThisFileDirectory)Entity\Enumerative\" />
-    <Folder Include="$(MSBuildThisFileDirectory)Entity\Function\" />
-    <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\AC\" />
-    <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\UnlockSetting\" />
-    <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\FoolHeating\" />
-    <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Electrical\" />
-    <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\EnvironmentalScience\" />
-    <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\MemberManagement\" />
-    <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AccountBindInfo\" />
-    <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\ResetAccountPassword\" />
-    <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\" />
-    <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\" />
-    <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Scene\" />
-    <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Panel\" />
-    <Folder Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\SearchDevice\" />
     <Folder Include="$(MSBuildThisFileDirectory)Entity\Device\" />
     <Folder Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\" />
     <Folder Include="$(MSBuildThisFileDirectory)DAL\DriverLayer\" />
diff --git a/HDL_ON/UI/UI0-Public/TopViewDiv.cs b/HDL_ON/UI/UI0-Public/TopViewDiv.cs
index 0cacd40..27de3ca 100644
--- a/HDL_ON/UI/UI0-Public/TopViewDiv.cs
+++ b/HDL_ON/UI/UI0-Public/TopViewDiv.cs
@@ -340,7 +340,7 @@
         /// <summary>
         /// 鎴愬憳椤堕儴鏍�
         /// </summary>
-        public void LoadTopView_MemberTopView(Action addAction, Action action)
+        public void LoadTopView_MemberTopView(Action callBack, Action action)
         {
             LoadTopView();
             backAction = action;
diff --git a/HDL_ON/UI/UI0-Public/Widget/DiySelectPopupDialog.cs b/HDL_ON/UI/UI0-Public/Widget/DiySelectPopupDialog.cs
deleted file mode 100644
index a66af36..0000000
--- a/HDL_ON/UI/UI0-Public/Widget/DiySelectPopupDialog.cs
+++ /dev/null
@@ -1,665 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using HDL_ON.UI.CSS;
-using Shared;
-
-namespace HDL_ON
-{
-    /// <summary>
-    /// 妤煎眰DiySelectPopupDialog
-    /// </summary>
-    public class DiySelectPopupDialog : Dialog
-    {
-        /// <summary>
-        /// ALLSELECT锛屾爣璇�
-        /// </summary>
-        public const string ALLSELECT = "ALLSELECT";
-
-        /// bodyView
-        /// </summary>
-        FrameLayout bodyView;
-        /// <summary>
-        /// 搴曢儴View
-        /// 鑷繁鏍规嵁闇�瑕佽皟鏁碭銆乊鍧愭爣
-        /// </summary>
-        public FrameLayout BackView;
-        /// <summary>
-        /// 鍏ㄩ儴鎸夐挳
-        /// </summary>
-        Button leftAllButton;
-        /// <summary>
-        /// 涓�绾ф粦鍔╒iew
-        /// </summary>
-        VerticalScrolViewLayout leftScrolView;
-        /// <summary>
-        /// 浜岀骇婊戝姩View
-        /// </summary>
-        VerticalScrolViewLayout rightScrolView;
-        /// <summary>
-        /// 閫変腑鍥炶皟浜嬩欢
-        /// </summary>
-        Action<string> SelectAction;
-        /// <summary>
-        /// 涓�绾ist
-        /// </summary>
-        List<RoomCellInfo> mFirstList = new List<RoomCellInfo>();
-        /// <summary>
-        /// 浜岀骇鑱斿姩List
-        /// </summary>
-        List<List<RoomCellInfo>> mSecondList = new List<List<RoomCellInfo>>();
-        /// <summary>
-        /// 浜岀骇鎵�鏈塋ist
-        /// </summary>
-        List<RoomCellInfo> mSecondAllList = new List<RoomCellInfo>();
-
-        /// <summary>
-        /// DiySelectPopupDialog
-        /// </summary>
-        public DiySelectPopupDialog()
-        {
-            bodyView = new FrameLayout();
-
-        }
-
-        /// <summary>
-        /// 鏄剧ずView
-        /// mFirstList銆乵SecondList涓嶅悎娉曢兘涓嶄細鏄剧ずView
-        /// mSecondList 涓嶄紶涓洪粯璁や竴绾�
-        /// </summary>
-        /// <param name="mFirstList">涓�绾ф暟鎹泦鍚�</param>
-        /// <param name="mSecondList">浜岀骇鏁版嵁闆嗗悎</param>
-        /// <param name="SelectAction">閫夋嫨鍥炶皟浜嬩欢</param>
-        /// <param name="selectTagId"></param>
-        public void ShowView(List<RoomCellInfo> mFirstList, List<List<RoomCellInfo>> mSecondList, Action<string> SelectAction, string selectTagId = ALLSELECT)
-        {
-            if (mFirstList == null)
-            {
-                Utlis.WriteLine("mFirstList null");
-                return;
-            }
-            //娉ㄥ唽鍥炶皟浜嬩欢
-            this.SelectAction = SelectAction;
-            //浜屾槸鍚﹂渶瑕佷簩绾у垽鏂�
-            if (mSecondList == null || mSecondList.Count == 0)
-            {
-                //涓�绾�
-                this.mFirstList = mFirstList;
-                //View鏄剧ず
-                ShowOneBaseView();
-                //鏁版嵁鍐呭濉厖
-                RefreshOneBaseView(selectTagId);
-            }
-            else
-            {
-                if (mFirstList.Count != mSecondList.Count)
-                {
-                    Utlis.WriteLine("鏁版嵁 涓嶈仈鍔ㄥ紓甯�");
-                    return;
-                }
-                //浜岀骇鑱斿姩
-                this.mFirstList = mFirstList;
-                this.mSecondList = mSecondList;
-                this.mSecondAllList.Clear();
-                foreach (var list in mSecondList)
-                {
-                    foreach (var data in list)
-                    {
-                        this.mSecondAllList.Add(data);
-                    }
-                }
-
-                //View鏄剧ず
-                ShowDoubleBaseView();
-                //鏁版嵁鍐呭濉厖
-                RefreshDoubleBaseView();
-                //閫変腑鏁堟灉
-                SetSelectTagId(selectTagId);
-
-            }
-            this.Show();
-        }
-
-
-        /// <summary>
-        /// 鍒锋柊UI锛岄�夋嫨鍏ㄩ儴
-        /// </summary>
-        void SelectAll()
-        {
-            RefreshSelectButton(leftScrolView, ALLSELECT);
-            var all = new RoomCellInfo()
-            {
-                TagId = ALLSELECT,
-                Title = "ALL",
-            };
-            LoadRightScrolView(all, this.mSecondAllList);
-        }
-
-        /// <summary>
-        /// 鏍规嵁tagID閫変腑
-        /// </summary>
-        void SetSelectTagId(string tagId)
-        {
-            if (string.IsNullOrEmpty(tagId) || tagId == ALLSELECT || mFirstList == null)
-            {
-                SelectAll();
-            }
-            else
-            {
-                //涓�绾фゼ灞傚尮閰嶆垚鍔�
-                var tagInfo = mFirstList.Find((m) => m.TagId == tagId);
-                if (tagInfo != null)
-                {
-                    var index = mFirstList.IndexOf(tagInfo);
-                    if (index < mSecondList.Count)
-                    {
-                        RefreshSelectButton(leftScrolView, tagId);
-                        LoadRightScrolView(tagInfo, mSecondList[index]);
-                        return;
-                    }
-                    else
-                    {
-                        SelectAll();
-                    }
-                }
-                else
-                {
-                    //SelectAll();
-                    //涓�绾х殑妤煎眰鍖归厤澶辫触锛屽皾璇曞尮閰嶄簩绾�
-                    if (mSecondList == null || mFirstList.Count != mSecondList.Count)
-                    {
-                        SelectAll();
-                    }
-                    else
-                    {
-                        //鏄惁鍖归厤鍒版埧闂�
-                        bool isFind = false;
-                        //1.閬嶅巻浜岀骇鎴块棿鏁版嵁
-                        for(var i = 0; i < mSecondList.Count; i++)
-                        {
-                            foreach (var room in mSecondList[i])
-                            {
-                                if(tagId == room.TagId)
-                                {
-                                    //鍖归厤鎴块棿鎴愬姛锛岄�変腑瀵逛簬鐨勬ゼ灞�
-                                    var tagFirstInfo = mFirstList[i];
-                                    isFind = true;
-                                    RefreshSelectButton(leftScrolView, tagFirstInfo.TagId);
-                                    LoadRightScrolView(tagFirstInfo, mSecondList[i]);
-                                    break;
-                                }
-                            }
-                        }
-
-                        //娌℃湁鍖归厤鍒版埧闂�
-                        if (!isFind)
-                        {
-                            SelectAll();
-                        }
-                    }
-
-
-                }
-            }
-        }
-
-        #region 浜岀骇鑱斿姩閫夋嫨鏁堟灉
-        /// <summary>
-        /// 鏄剧ず浜岀骇view
-        /// </summary>
-        void ShowDoubleBaseView()
-        {
-            bodyView.BackgroundColor = CSS_Color.DialogTransparentColor1;
-            this.AddChidren(bodyView);
-            bodyView.MouseUpEventHandler = (sender, e) =>
-            {
-                this.Close();
-            };
-
-            BackView = new FrameLayout()
-            {
-                X = Application.GetRealWidth(10),
-                Y = Application.GetRealHeight(104),
-                Width = Application.GetRealWidth(283),
-                Height = Application.GetRealWidth(242),
-            };
-            bodyView.AddChidren(BackView);
-
-            var backImageView = new ImageView(){
-                Width = BackView.Width,
-                Height = BackView.Height,
-                ImagePath = "Public/PopupDialog.png"
-            };
-            BackView.AddChidren(backImageView);
-
-            leftAllButton = new Button()
-            {
-                Y = Application.GetRealWidth(14),
-                X = Application.GetRealWidth(24),
-                Height = Application.GetRealWidth(44),
-                TextColor = CSS_Color.FirstLevelTitleColor,
-                SelectedTextColor = CSS_Color.MainColor,
-                TextSize = CSS_FontSize.SubheadingFontSize,
-                TextAlignment = TextAlignment.CenterLeft,
-                TextID = StringId.All,
-                IsSelected = true,
-                //IsBold = true,
-            };
-            BackView.AddChidren(leftAllButton);
-            //鍒嗗壊绾�
-            var lineView1 = new FrameLayout()
-            {
-                Width = Application.GetRealWidth(112),
-                Height = Application.GetRealHeight(1),
-                Y = leftAllButton.Bottom,
-                X = leftAllButton.X,
-                BackgroundColor = CSS_Color.DividingLineColor,
-            };
-            BackView.AddChidren(lineView1);
-
-            leftScrolView = new VerticalScrolViewLayout()
-            {
-                X = Application.GetRealWidth(8),
-                Y = leftAllButton.Bottom,
-                Height = Application.GetRealWidth(176),
-                Width = Application.GetRealWidth(128),
-                VerticalScrollBarEnabled = false,
-            };
-            BackView.AddChidren(leftScrolView);
-
-            rightScrolView = new VerticalScrolViewLayout()
-            {
-                X = leftScrolView.Right + Application.GetRealWidth(12),
-                Y = Application.GetRealWidth(58),
-                Height = Application.GetRealWidth(176),
-                Width = Application.GetRealWidth(128),
-                VerticalScrollBarEnabled = false,
-            };
-            BackView.AddChidren(rightScrolView);
-
-            leftAllButton.MouseUpEventHandler = (sender, e) =>
-            {
-                leftAllButton.IsSelected = true;
-
-                //鍔犺浇鍏ㄩ儴
-                SelectAll();
-            };
-        }
-
-        /// <summary>
-        /// 鍒锋柊浜岀骇鑱斿姩鐨刅IEW
-        /// </summary>
-        void RefreshDoubleBaseView()
-        {
-            leftScrolView.RemoveAll();
-            for (var i = 0; i < mFirstList.Count; i++)
-            {
-                AddSelectButton(leftScrolView, mFirstList[i], mSecondList[i]);
-            }
-        }
-
-        /// <summary>
-        /// scrolView閲岄潰Button 閫変腑鏁堟灉浜掓枼
-        /// </summary>
-        /// <param name="scrolView"></param>
-        /// <param name="selectBtnTag"></param>
-        void RefreshSelectButton(VerticalScrolViewLayout scrolView, string selectBtnTag)
-        {
-            try
-            {
-                if (leftAllButton != null)
-                {
-                    leftAllButton.IsSelected = selectBtnTag == ALLSELECT;
-                }
-
-                if (scrolView != null)
-                {
-                    for (int i = 0; i < scrolView.ChildrenCount; i++)
-                    {
-                        if (scrolView.GetChildren(i).GetType() == typeof(FrameLayout))
-                        {
-                            var cellView = (FrameLayout)scrolView.GetChildren(i);
-                            for (int j = 0; j < cellView.ChildrenCount; j++)
-                            {
-                                if (cellView.GetChildren(j).GetType() == typeof(Button))
-                                {
-                                    var titleButton = (Button)cellView.GetChildren(j);
-                                    var o = titleButton.GetTagByKey("BtnKey");
-                                    if (o != null && o.ToString() == selectBtnTag)
-                                    {
-                                        titleButton.IsSelected = true;
-                                    }
-                                    else
-                                    {
-                                        titleButton.IsSelected = false;
-                                    }
-                                }
-                            }
-                        }
-                    }
-                }
-            }
-            catch
-            {
-
-            }
-        }
-
-        /// <summary>
-        /// 娣诲姞涓�绾фゼ灞傞�夋嫨CellView
-        /// </summary>
-        /// <param name="scrolView"></param>
-        /// <param name="firstData"></param>
-        /// <param name="rightList"></param>
-        void AddSelectButton(VerticalScrolViewLayout scrolView, RoomCellInfo firstData, List<RoomCellInfo> rightList)
-        {
-            var cellView = new FrameLayout()
-            {
-                Height = Application.GetRealWidth(44),
-                Tag = "cell"
-            };
-            scrolView.AddChidren(cellView);
-
-            var titleButton = new Button()
-            {
-                X = Application.GetRealWidth(16),
-                Height = Application.GetRealWidth(44),
-                TextColor = CSS_Color.FirstLevelTitleColor,
-                SelectedTextColor = CSS_Color.MainColor,
-                TextSize = CSS_FontSize.TextFontSize,
-                TextAlignment = TextAlignment.CenterLeft,
-                Text = firstData.Title,
-            };
-            cellView.AddChidren(titleButton);
-            titleButton.AddTag("BtnKey", firstData.TagId);
-
-            //椤堕儴鍒嗗壊绾�
-            var lineView = new FrameLayout()
-            {
-                X = Application.GetRealWidth(16),
-                Height = Application.GetRealHeight(1),
-                Width = Application.GetRealWidth(112),
-                BackgroundColor = CSS_Color.DividingLineColor,
-                Y = cellView.Height - Application.GetRealHeight(1),
-            };
-            cellView.AddChidren(lineView);
-
-            EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
-            {
-                //cellView.BackgroundColor = CSS_Color.viewTranslucence;
-                RefreshSelectButton(scrolView, firstData.TagId);
-                LoadRightScrolView(firstData, rightList);
-            };
-
-            titleButton.MouseUpEventHandler = eventHandler;
-            cellView.MouseUpEventHandler = eventHandler;
-
-            //EventHandler<MouseEventArgs> mousDownEventHandler = (sender, e) =>
-            //{
-            //    cellView.BackgroundColor = CSS_Color.TopViewColor;
-            //};
-
-            //titleButton.MouseDownEventHandler = mousDownEventHandler;
-            //cellView.MouseDownEventHandler = mousDownEventHandler;
-        }
-
-
-
-        /// <summary>
-        /// 鍔犺浇浜岀骇婊戝姩View
-        /// </summary>
-        /// <param name="firstData"></param>
-        /// <param name="rightList"></param>
-        void LoadRightScrolView(RoomCellInfo firstData, List<RoomCellInfo> rightList)
-        {
-            rightScrolView.RemoveAll();
-
-            //娣诲姞椤堕儴鍒嗗壊绾�
-            var lineView2 = new FrameLayout()
-            {
-                Width = Application.GetRealWidth(112),
-                Height = Application.GetRealHeight(1),
-                BackgroundColor = CSS_Color.DividingLineColor,
-            };
-            rightScrolView.AddChidren(lineView2);
-            //娣诲姞鍏ㄩ儴鎸夐挳
-            var allInfo = new RoomCellInfo()
-            {
-                Title = Language.StringByID(StringId.All),
-                TagId = firstData.TagId,//涓婁竴绾фゼ灞侷D
-            };
-            AddRightSelectButton(rightScrolView, allInfo, true);
-
-            for (var i = 0; i < rightList.Count; i++)
-            {
-                AddRightSelectButton(rightScrolView, rightList[i]);
-            }
-
-        }
-
-        /// <summary>
-        ///  娣诲姞浜岀骇閫夋嫨CellView
-        /// </summary>
-        /// <param name="scrolView"></param>
-        /// <param name="secondData"></param>
-        /// <param name="isSelected"></param>
-        void AddRightSelectButton(VerticalScrolViewLayout scrolView, RoomCellInfo secondData, bool isSelected = false)
-        {
-            var cellView = new FrameLayout()
-            {
-                Height = Application.GetRealWidth(44),
-            };
-            scrolView.AddChidren(cellView);
-
-            var titleButton = new Button()
-            {
-                //X = Application.GetRealWidth(16),
-                Height = Application.GetRealWidth(44),
-                TextColor = CSS_Color.FirstLevelTitleColor,
-                SelectedTextColor = CSS_Color.MainColor,
-                TextSize = CSS_FontSize.TextFontSize,
-                TextAlignment = TextAlignment.CenterLeft,
-                Text = secondData.Title,
-                IsSelected = isSelected
-            };
-            cellView.AddChidren(titleButton);
-
-            var lineView = new FrameLayout()
-            {
-                Width = Application.GetRealWidth(112),
-                Height = Application.GetRealHeight(1),
-                Y = cellView.Height - Application.GetRealHeight(1),
-                BackgroundColor = CSS_Color.DividingLineColor,
-            };
-            cellView.AddChidren(lineView);
-
-            EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
-            {
-                this.Close();
-                //鍥炶皟閫変腑绱㈠紩
-                SelectAction?.Invoke(secondData.TagId);
-            };
-
-            titleButton.MouseUpEventHandler = eventHandler;
-            cellView.MouseUpEventHandler = eventHandler;
-
-           
-        }
-
-        #endregion
-
-
-        #region 鍙湁涓�绾х殑鑱斿姩
-        /// <summary>
-        /// 閮芥樉绀轰竴绾х殑
-        /// </summary>
-        void ShowOneBaseView()
-        {
-            bodyView.BackgroundColor = CSS_Color.DialogTransparentColor1;
-            this.AddChidren(bodyView);
-            bodyView.MouseUpEventHandler = (sender, e) =>
-            {
-                this.Close();
-            };
-
-            BackView = new FrameLayout()
-            {
-                X = Application.GetRealWidth(10),
-                Y = Application.GetRealHeight(104),
-                Width = Application.GetRealWidth(160),
-                Height = Application.GetRealWidth(198),
-            };
-            bodyView.AddChidren(BackView);
-
-            var backImageView = new ImageView()
-            {
-                Width = BackView.Width,
-                Height = BackView.Height,
-                ImagePath = "PersonalCenter/HomeList3bg.png"
-            };
-            BackView.AddChidren(backImageView);
-
-            leftAllButton = new Button()
-            {
-                Y = Application.GetRealWidth(14),
-                X = Application.GetRealWidth(24),
-                Height = Application.GetRealWidth(44),
-                TextColor = CSS_Color.FirstLevelTitleColor,
-                SelectedTextColor = CSS_Color.MainColor,
-                TextSize = CSS_FontSize.SubheadingFontSize,
-                TextAlignment = TextAlignment.CenterLeft,
-                TextID = StringId.All,
-                //IsBold = true,
-            };
-            BackView.AddChidren(leftAllButton);
-            //鍒嗗壊绾�
-            var lineView1 = new FrameLayout()
-            {
-                Width = Application.GetRealWidth(112),
-                Height = Application.GetRealHeight(1),
-                Y = leftAllButton.Bottom,
-                X = leftAllButton.X,
-                BackgroundColor = CSS_Color.DividingLineColor,
-            };
-            BackView.AddChidren(lineView1);
-
-            leftScrolView = new VerticalScrolViewLayout()
-            {
-                X = Application.GetRealWidth(8),
-                Y = leftAllButton.Bottom,
-                Height = Application.GetRealWidth(132),
-                Width = Application.GetRealWidth(144),
-                VerticalScrollBarEnabled = false,
-            };
-            BackView.AddChidren(leftScrolView);
-
-            leftAllButton.MouseUpEventHandler = (sender, e) =>
-            {
-                this.Close();
-                SelectAction?.Invoke(ALLSELECT);
-            };
-        }
-
-        /// <summary>
-        /// 
-        /// </summary>
-        /// <param name="tagId"></param>
-        void RefreshOneBaseView(string tagId)
-        {
-            if (leftAllButton != null)
-            {
-                leftAllButton.IsSelected = tagId == ALLSELECT;
-            }
-            leftScrolView.RemoveAll();
-            for (var i = 0; i < mFirstList.Count; i++)
-            {
-                AddOneSelectButton(leftScrolView, mFirstList[i], tagId);
-            }
-        }
-
-        /// <summary>
-        /// 娣诲姞涓�绾фゼ灞傞�夋嫨CellView
-        /// </summary>
-        /// <param name="scrolView"></param>
-        /// <param name="firstIndex"></param>
-        /// <param name="firstText"></param>
-        void AddOneSelectButton(VerticalScrolViewLayout scrolView, RoomCellInfo firstData, string tagId)
-        {
-            var cellView = new FrameLayout()
-            {
-                Height = Application.GetRealWidth(44),
-                Tag = "cell"
-            };
-            scrolView.AddChidren(cellView);
-
-            var titleButton = new Button()
-            {
-                X = Application.GetRealWidth(16),
-                Height = Application.GetRealWidth(44),
-                TextColor = CSS_Color.FirstLevelTitleColor,
-                SelectedTextColor = CSS_Color.MainColor,
-                TextSize = CSS_FontSize.TextFontSize,
-                TextAlignment = TextAlignment.CenterLeft,
-                Text = firstData.Title,
-            };
-            cellView.AddChidren(titleButton);
-            titleButton.IsSelected = firstData.TagId == tagId;
-            titleButton.AddTag("BtnKey", firstData.TagId);
-
-            //椤堕儴鍒嗗壊绾�
-            var lineView = new FrameLayout()
-            {
-                X = Application.GetRealWidth(16),
-                Height = Application.GetRealHeight(1),
-                Width = Application.GetRealWidth(112),
-                BackgroundColor = CSS_Color.DividingLineColor,
-                Y = cellView.Height - Application.GetRealHeight(1),
-            };
-            cellView.AddChidren(lineView);
-
-            EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
-            {
-                this.Close();
-                //鍥炶皟閫変腑绱㈠紩
-                SelectAction?.Invoke(firstData.TagId);
-            };
-
-            titleButton.MouseUpEventHandler = eventHandler;
-            cellView.MouseUpEventHandler = eventHandler;
-
-            //EventHandler<MouseEventArgs> mousDownEventHandler = (sender, e) =>
-            //{
-            //    cellView.BackgroundColor = CSS_Color.TopViewColor;
-            //};
-
-            //titleButton.MouseDownEventHandler = mousDownEventHandler;
-            //cellView.MouseDownEventHandler = mousDownEventHandler;
-        }
-
-        
-
-        #endregion
-
-
-        #region 閫夋嫨妤煎眰鍜屾埧闂翠笓鐢�
-
-
-        #endregion
-
-
-    }
-
-    /// <summary>
-    /// 
-    /// </summary>
-    public class RoomCellInfo
-    {
-        /// <summary>
-        /// 
-        /// </summary>
-        public string Title;
-        /// <summary>
-        /// 
-        /// </summary>
-        public string TagId;
-    }
-}
diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
index 246e637..7cd1394 100644
--- a/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
+++ b/HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs
@@ -719,7 +719,7 @@
                         functionCount = FunctionList.List.GetArmSensorList().Count;
                         break;
                     case ShowFunction.VideoIntercom:
-                        if (FunctionList.List.videoIntercom != null)
+                        if (FunctionList.List.videoIntercom != null && FunctionList.List.videoIntercom.Count > 0)
                         {
                             functionCount = 1;
                         }
@@ -1028,12 +1028,12 @@
                         btnName.TextID = StringId.Sensor;
                         functionPageTitleId = StringId.Sensor;
                         break;
-                    case ShowFunction.VideoIntercom:
+                    case ShowFunction.VideoIntercom://鍙瀵硅
                         btnName.TextID = StringId.VideoIntercom;
                         btnFunctionViewBg.MouseUpEventHandler = (sender, e) =>
                         {
                             var videoMethod = new UI2.FuntionControlView.Video.VideoMethod();
-                            videoMethod.MianView(this,FunctionList.List.videoIntercom);
+                            videoMethod.MianView(this);
                         };
                         break;
                     case ShowFunction.SecurityCenter:
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs
index 2bc0a26..ef3bb73 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs
@@ -504,6 +504,7 @@
         {
             //瀹氫箟涓�涓眬閮╳eekList鍒楄〃鐢ㄦ潵璁板綍閫変腑鏁版嵁;
             List<string> weekStateList = new List<string>();
+
             PublicInterface weekView = new PublicInterface();
             if (Logic.currlogic.cycle.type == "week")
             {
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/AirQuality.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/AirQuality.cs
deleted file mode 100644
index 4176826..0000000
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/AirQuality.cs
+++ /dev/null
@@ -1,132 +0,0 @@
-锘縰sing System;
-using System.Collections.Generic;
-using Shared;
-namespace HDL_ON.UI.UI2.Intelligence.Automation
-{
-    public class AirQuality : FrameLayout
-    {
-        public AirQuality()
-        {
-            Tag = "Logic";
-        }
-        public void Show()
-        {
-            #region  鐣岄潰甯冨眬
-            LogicView.TopView topView = new LogicView.TopView();
-            topView.frameLayout.Height = Application.GetRealHeight(64 + 20);
-            this.AddChidren(topView.FLayoutView());
-            topView.topNameBtn.TextID = StringId.selectionCondition;
-            topView.Location();
-            topView.clickBackBtn.MouseUpEventHandler += (e, sen) =>
-            {
-                RemoveFromParent();
-            };
-
-            FrameLayout viewLayout = new FrameLayout
-            {
-                Y = Application.GetRealHeight(64 + 20),
-                Width = Application.GetRealWidth(LogicView.TextSize.view375),
-                Height = Application.GetRealHeight(LogicView.TextSize.view667 - 64 - 20),
-                BackgroundColor = CSS.CSS_Color.viewMiddle,
-            };
-            this.AddChidren(viewLayout);
-            #endregion
-
-            var list = new List<string> {
-                Language.StringByID(StringId.kongqiyou),
-                Language.StringByID(StringId.kongqiliang),
-                Language.StringByID(StringId.kongqicha),
-            };
-            for (int i = 0; i < list.Count; i++)
-            {
-                LogicView.SelectTypeView view = new LogicView.SelectTypeView();
-                view.frameLayout.Y = Application.GetRealHeight(i * 50);
-                view.btnIcon.Visible = false;
-                view.btnNextIcon.Visible = false;
-                view.btnText.X = Application.GetRealWidth(16);
-                view.btnLine.X = Application.GetRealWidth(16);
-                view.btnLine.Width = Application.GetRealWidth(375 - 16 - 16);
-                view.btnText.Text = list[i];
-                view.btnClick.Tag = list[i];
-                viewLayout.AddChidren(view.FLayoutView());
-
-                view.btnClick.MouseUpEventHandler += (sen, e) =>
-                {
-                    string value = "";
-                    string text = view.btnClick.Tag.ToString();
-                    if (text == Language.StringByID(StringId.kongqiyou))
-                    {
-                        //浼�
-                        value = "excellent";
-                    }
-                    else if (text == Language.StringByID(StringId.kongqiliang))
-                    {
-                        //鑹�
-                        value = "good";
-                    }
-                    else if (text == Language.StringByID(StringId.kongqicha))
-                    {
-                        //宸�
-                        value = "poor";
-                    }
-                    AddDic(value);
-                };
-            }
-      
-        }
-        /// <summary>
-        /// 灏佽鏁版嵁
-        /// </summary>
-        /// <param name="value"></param>
-        private void AddDic(string value)
-        {
-            Input input = new Input();
-            input.sid = LogicMethod.NewSid();
-            input.condition_type = "9";
-            Dictionary<string, string> dic = new Dictionary<string, string>();
-            LogicMethod.dictionary(dic, "key", "air_quality");
-            LogicMethod.dictionary(dic, "comparator", "=");
-            LogicMethod.dictionary(dic, "data_type", "string");
-            LogicMethod.dictionary(dic, "value", value);
-            input.condition.Add(dic);
-            AddCondition(input);
-        }
-        /// <summary>
-        /// 娣诲姞鏉′欢
-        /// </summary>
-        /// <param name="input"></param>
-        private void AddCondition(Input input)
-        {
-            ///璁板綍绱㈠紩鍊�
-            int index = -1;
-            for (var i = 0; i < Logic.currlogic.input.Count; i++)
-            {
-                var condition_type = Logic.currlogic.input[i].condition_type;
-                if (condition_type == "9")
-                {
-                    ///鎵惧埌鏍囪绱㈠紩锛岄��鍑哄惊鐜綋
-                    index = i;
-                    break;
-                }
-            }
-            if (index != -1)
-            {
-                //绉婚櫎鏃ф暟鎹�
-                Logic.currlogic.input.RemoveAt(index);
-                //鏂版暟鎹彃鍏ユ棫鏁版嵁鐨勪綅缃�
-                Logic.currlogic.input.Insert(index, input);
-            }
-            else
-            {
-                Logic.currlogic.input.Add(input);
-            }
-
-            LogicMethod.RemoveAllView();
-            AddLogic addLogic = new AddLogic();
-            MainPage.BasePageView.AddChidren(addLogic);
-            addLogic.Show();
-            MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-
-        }
-    }
-}
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
index c888bc1..8ccdfae 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
@@ -407,40 +407,6 @@
                             }
                         }
                         break;
-                    case "9":
-                        {
-                            inputView.btnIcon.UnSelectedImagePath = "LogicIcon/changesinoutdoor.png";
-                            foreach (var dic in dicList)
-                            {
-                                string strtext = "";
-                                string value = dic["value"];
-                                switch (value)
-                                {
-                                    case "excellent":
-                                        {
-                                            strtext = Language.StringByID(StringId.kongqiyou);
-
-                                        }
-                                        break;
-                                    case "good":
-                                        {
-
-                                            strtext = Language.StringByID(StringId.kongqiliang);
-
-                                        }
-                                        break;
-                                    case "poor":
-                                        {
-                                            strtext = Language.StringByID(StringId.kongqicha);
-                                        }
-                                        break;
-
-                                }
-                                inputView.btnText.TextID = StringId.kongqizhiliang;
-                                inputView.btnState.Text = strtext;
-                            }
-                        }
-                        break;
 
                 }
                 //鍐嶆缂栬緫鏉′欢鐘舵�佺偣鍑讳簨浠�
@@ -596,15 +562,6 @@
                                 WeatherCondition weatherCondition = new WeatherCondition();
                                 MainPage.BasePageView.AddChidren(weatherCondition);
                                 weatherCondition.Show();
-                                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-                            }
-                            break;
-                        case "9":
-                            {
-
-                                AirQuality airQuality = new AirQuality();
-                                MainPage.BasePageView.AddChidren(airQuality);
-                                airQuality.Show();
                                 MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                             }
                             break;
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs
index d392722..e63e151 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs
@@ -5,7 +5,6 @@
     /// <summary>
     /// 閫昏緫瀛樺偍鏁版嵁瀵硅薄
     /// </summary>
-    [Serializable]
     public class Logic
     {
 
@@ -63,7 +62,6 @@
     /// <summary>
     /// 鎵ц鍛ㄦ湡瀵硅薄
     /// </summary>
-    [Serializable]
     public class Cycle
     {
         /// <summary>
@@ -76,7 +74,6 @@
     /// <summary>
     /// 杈撳叆鏉′欢瀵硅薄
     /// </summary>
-    [Serializable]
     public class Input
     {
         /// <summary>
@@ -96,15 +93,10 @@
         /// </summary>
         public string condition_type = "";
         public List<Dictionary<string, string>> condition = new List<Dictionary<string, string>>();
-        /// <summary>
-        /// 鍦扮悊鍥存爮閰嶇疆
-        /// </summary>
-        public Fence geo_fence = new Fence();
     }
     /// <summary>
     /// 杈撳嚭鐩爣瀵硅薄
     /// </summary>
-    [Serializable]
     public class Output
     {
         /// <summary>
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AddOutputInputTextView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AddOutputInputTextView.cs
index 90736a0..9360e67 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AddOutputInputTextView.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AddOutputInputTextView.cs
@@ -35,6 +35,7 @@
             frameLayout.Height = Application.GetRealHeight(flHeight);
             btnIf.Y= Application.GetRealHeight(btnY);
             frameLayout.AddChidren(btnIf);
+
             return frameLayout;
         }
     }
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TopView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TopView.cs
index c7d0a64..00a669b 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TopView.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TopView.cs
@@ -9,7 +9,7 @@
         /// <summary>
         /// 鏈�涓婇潰鍧梀iew
         /// </summary>
-        public FrameLayout frameLayout = new FrameLayout
+        public FrameLayout frameLayout = new FrameLayout 
         {
             BackgroundColor = CSS.CSS_Color.viewTop,
             Height = Application.GetRealHeight(64),
@@ -22,7 +22,7 @@
         {
             TextSize = TextSize.text18,
             TextColor = CSS.CSS_Color.textColor,
-            Width = Application.GetRealWidth(TextSize.view375 - 60 - 60),
+            Width = Application.GetRealWidth(TextSize.view375-60-60),
             Height = Application.GetRealHeight(25),
             Y = Application.GetRealHeight(30),
             X = Application.GetRealWidth(60)
@@ -62,7 +62,7 @@
         /// <summary>
         /// 璁剧疆鍥炬爣澧炲姞鐑敭澶у皬
         /// </summary>
-        public Button clickSetBtn = new Button
+        public Button clickSetBtn = new Button 
         {
             X = Application.GetRealWidth(337 - 37),
             Width = Application.GetRealWidth(28 + 37),
@@ -82,35 +82,6 @@
             return frameLayout;
         }
         #endregion
-
-        /// <summary>
-        /// 鏄剧ず浣嶇疆
-        /// </summary>
-        public void Location()
-        {
-            //鑾峰彇瀹藉害
-            int widthValue = topNameBtn.GetTextWidth();
-            int textWidth = (Application.GetRealWidth(255) - widthValue) / 2;
-            Button locationBtn = new Button
-            {
-                Width = Application.GetRealWidth(18),
-                Height = Application.GetRealWidth(18),
-                X = Application.GetRealWidth(60 + 4) + textWidth + widthValue,
-                Y = Application.GetRealHeight(34 + 1),
-                UnSelectedImagePath = "LogicIcon/location.png",
-            };
-            frameLayout.AddChidren(locationBtn);
-
-            Button textBtn = new Button
-            {
-                Height = Application.GetRealHeight(14),
-                Y = Application.GetRealHeight(57),
-                TextSize = LogicView.TextSize.text10,
-                TextColor = CSS.CSS_Color.textCancelColor,
-                Text = "骞夸笢骞垮窞甯傜暘绂哄尯鐭虫ゼ闀�",
-            };
-            frameLayout.AddChidren(textBtn);
-        }
     }
 }
 
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs
index ae546df..50c4e4f 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs
@@ -261,7 +261,7 @@
             if (idStr.Code == "0" && idStr.Data != null && idStr.Data.ToString() != "")
             {
                 var date = Newtonsoft.Json.JsonConvert.SerializeObject(idStr.Data);
-                var dateList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<LogicData>>(date);
+                var dateList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Date>>(date);
                 for (int i = 0; i < dateList.Count; i++)
                 {
                     //娣诲姞閫昏緫ID
@@ -526,12 +526,12 @@
             }
         }
     }
-    class LogicData
+    class Date
     {
         /// <summary>
         /// 浜戠鍞竴id
         /// </summary>
-        public string userLogicId = ""; 
+        public string userLogicId = "";
         /// <summary>
         /// 缃戝叧id
         /// </summary>
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs
index 18ec0c8..536cc06 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs
@@ -388,157 +388,6 @@
 
         }
 
-        /// <summary>
-        /// 瓒呭嚭5涓厓绱犺鐢ㄦ粦鍔ㄦ帶浠�
-        /// </summary>
-        /// <param name="frame">鏄剧ず鍦ㄥ摢涓晫闈㈢殑鐖舵帶浠�</param>
-        /// <param name="list">鏄剧ず鏁版嵁婧�</param>
-        /// <param name="stateList">涔嬪墠鐘舵�佹暟鎹簮</param>
-        /// <param name="titleText">鏍囬</param>
-        /// <param name="action">杩斿洖鍊肩储寮曞��</param>
-        public void FrameOrVvList(FrameLayout frame, List<string> list,List<string>stateList, int titleText, Action<List<string>> action)
-        {
-
-            int line = 0;
-            if (list.Count == 0 || list.Count > 5)
-            {
-                //瓒呭嚭5涓彧鑳介粯璁�5涓�;
-                line = 5;
-            }
-            else
-            {
-                line = list.Count;
-            }
-
-            FrameLayout frameLayout = new FrameLayout
-            {
-                BackgroundColor = CSS.CSS_Color.viewTrans60lucence,
-            };
-            frame.AddChidren(frameLayout);
-
-            LogicView.DateView view = new LogicView.DateView();
-            view.btnTitle.TextID = titleText;
-            view.FLayoutView(frameLayout, line);
-            view.btnCancel.MouseUpEventHandler += (sender, e) =>
-            {
-                //绉婚櫎fLayout鐣岄潰
-                frameLayout.RemoveFromParent();
-            };
-            //灏忎簬5浣跨敤
-            FrameLayout frameL = new FrameLayout
-            {
-                Y = Application.GetRealHeight(56),
-                Height = Application.GetRealHeight(50 * line),
-            };
-            //澶т簬5浣跨敤
-            VerticalRefreshLayout verticalRefresh = new VerticalRefreshLayout
-            {
-                Y = Application.GetRealHeight(56),
-                Height = Application.GetRealHeight(50 * 5),
-
-            };
-            verticalRefresh.BeginHeaderRefreshingAction += () =>
-            {
-                //鍏抽棴鍒锋柊View锛�
-                verticalRefresh.EndHeaderRefreshing();
-            };
-
-            if (list.Count == 0)
-            {
-                //Button btnTipNot = new Button
-                //{
-                //    X = Application.GetRealWidth(93),
-                //    Y = Application.GetRealHeight(80),
-                //    Width = Application.GetRealWidth(158),
-                //    Height = Application.GetRealWidth(158),
-                //    UnSelectedImagePath = "TipNot.png",
-
-                //};
-                //view.frameLayout.AddChidren(btnTipNot);
-
-                //Button btnTipNotText = new Button()
-                //{
-                //    Y = btnTipNot.Bottom + Application.GetRealHeight(16),
-                //    Height = Application.GetRealHeight(20),
-                //    TextID = StringId.secnenull,
-                //    TextColor = CSS.CSS_Color.textColor,
-                //    TextSize = LogicView.TextSize.text14,
-                //    TextAlignment = TextAlignment.Center,
-                //};
-                //view.frameLayout.AddChidren(btnTipNotText);
-            }
-            else if (list.Count > 0 && list.Count <= 5)
-            {
-                view.frameLayout.AddChidren(frameL);
-            }
-            else if (list.Count > 5)
-            {
-                view.frameLayout.AddChidren(verticalRefresh);
-
-            }
-            List<string> selecetdList = new List<string>();
-            for (int i = 0; i < list.Count; i++)
-            {
-                string strName = list[i];
-                LogicView.CheckView checkView = new LogicView.CheckView();
-                checkView.btnText.TextSize = LogicView.TextSize.text14;
-                if (list.Count <= 5)
-                {
-                    checkView.frameLayout.Y = Application.GetRealWidth(i * 50);
-                    frameL.AddChidren(checkView.FLayoutView());
-                    if (line - 1 == i)
-                    {
-                        checkView.btnLine.BackgroundColor = CSS.CSS_Color.view;
-                    }
-                }
-                else
-                {
-                    verticalRefresh.AddChidren(checkView.FLayoutView());
-                }
-                if (stateList.Contains(strName)) {
-                    checkView.btnClick.IsSelected = true;
-                    checkView.btnCheckIcon.IsSelected = true;
-                    selecetdList.Add(strName);
-                }
-                checkView.btnText.Text = strName;
-                checkView.btnClick.Tag = strName;//鏍囪
-                //鐐瑰嚮浜嬩欢
-                checkView.btnClick.MouseUpEventHandler += (sender1, e1) =>
-                {
-                    checkView.btnClick.IsSelected = !checkView.btnClick.IsSelected;
-                    checkView.btnCheckIcon.IsSelected = checkView.btnClick.IsSelected;
-                    if (checkView.btnClick.IsSelected)
-                    {
-                        if (!selecetdList.Contains(checkView.btnClick.Tag.ToString()))
-                        {
-                            selecetdList.Add(checkView.btnClick.Tag.ToString());
-                        }
-
-                    }
-                    else
-                    {
-                        if (selecetdList.Contains(checkView.btnClick.Tag.ToString()))
-                        {
-                            selecetdList.Remove(checkView.btnClick.Tag.ToString());
-                        }
-                    }
-                };
-
-            }
-            view.btnConfirm.MouseUpEventHandler += (sender1, e1) =>
-            {
-                if (selecetdList.Count == 0)
-                {
-                    return;
-                }
-                //鍒楄〃绱㈠紩鍊�
-                action(selecetdList);
-                //绉婚櫎fLayout鐣岄潰
-                frameLayout.RemoveFromParent();
-            };
-
-        }
-
 
         /// <summary>
         /// 鑾峰彇鐣岄潰鍒楄〃
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs
index 28e66fa..b234906 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs
@@ -4,33 +4,11 @@
 using HDL_ON.DAL.Server;
 using Newtonsoft.Json.Linq;
 using System.Collections.Generic;
-using HDL_ON.Entity;
 
 namespace HDL_ON.UI.UI2.Intelligence.Automation
 {
     public  class Send
     {
-
-        /// <summary>
-        /// 璋冪敤鑾峰彇浣忓畢瀛愯处鍙峰垪琛�
-        /// </summary>
-        public static List<ResidenceMemberInfo> GetResidenceMemberAccount()
-        {
-
-            var responePack = new HttpServerRequest().GetResidenceMemberAccount();
-            if (responePack.Code == StateCode.SUCCESS)
-            {
-                return Newtonsoft.Json.JsonConvert.DeserializeObject<List<ResidenceMemberInfo>>(responePack.Data.ToString());
-            }
-            //澶辫触
-            else
-            {
-                //鎻愮ず
-                IMessageCommon.Current.ShowErrorInfoAlter(responePack.Code);
-            }
-            return new List<ResidenceMemberInfo>();
-        }
-
         /// <summary>
         /// 鑾峰彇閫昏緫ID鍒楄〃
         /// </summary>
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Time3.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/Time3.cs
index 7d58572..2d42405 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/Time3.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Time3.cs
@@ -18,7 +18,29 @@
             topView.frameLayout.Height = Application.GetRealHeight(64 + 20);
             this.AddChidren(topView.FLayoutView());
             topView.topNameBtn.Text = titelText;
-            topView.Location();
+            //鑾峰彇瀹藉害
+            int widthValue = topView.topNameBtn.GetTextWidth();
+            int textWidth = (Application.GetRealWidth(255) - widthValue) / 2;
+            Button locationBtn = new Button
+            {
+                Width = Application.GetRealWidth(18),
+                Height = Application.GetRealWidth(18),
+                X = Application.GetRealWidth(60 + 4) + textWidth + widthValue,
+                Y = Application.GetRealHeight(34 + 1),
+                UnSelectedImagePath = "LogicIcon/location.png",
+
+            };
+            topView.frameLayout.AddChidren(locationBtn);
+
+            Button textBtn = new Button
+            {
+                Height = Application.GetRealHeight(14),
+                Y = Application.GetRealHeight(57),
+                TextSize = LogicView.TextSize.text10,
+                TextColor = CSS.CSS_Color.textCancelColor,
+                Text = "骞夸笢骞垮窞甯傜暘绂哄尯鐭虫ゼ闀�",
+            };
+            topView.frameLayout.AddChidren(textBtn);
             topView.clickBackBtn.MouseUpEventHandler += (e, sen) =>
             {
                 RemoveFromParent();
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Weather.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/Weather.cs
index e0d3cbc..90ab211 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/Weather.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Weather.cs
@@ -72,14 +72,7 @@
                 weatherCondition.Show();
                 MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
             };
-            //绌烘皵璐ㄩ噺
-            kongqiViewk.btnClick.MouseUpEventHandler += (sen, e) => {
-                AirQuality airQuality = new AirQuality();
-                MainPage.BasePageView.AddChidren(airQuality);
-                airQuality.Show();
-                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-            };
-
+          
             #endregion
         }
     }
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/WeatherCondition.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/WeatherCondition.cs
index fbe50e2..c8a71b6 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/WeatherCondition.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/WeatherCondition.cs
@@ -16,7 +16,29 @@
             topView.frameLayout.Height = Application.GetRealHeight(64 + 20);
             this.AddChidren(topView.FLayoutView());
             topView.topNameBtn.TextID = StringId.selectionCondition;
-            topView.Location();
+            //鑾峰彇瀹藉害
+            int widthValue = topView.topNameBtn.GetTextWidth();
+            int textWidth = (Application.GetRealWidth(255) - widthValue) / 2;
+            Button locationBtn = new Button
+            {
+                Width = Application.GetRealWidth(18),
+                Height = Application.GetRealWidth(18),
+                X = Application.GetRealWidth(60 + 4) + textWidth + widthValue,
+                Y = Application.GetRealHeight(34 + 1),
+                UnSelectedImagePath = "LogicIcon/location.png",
+
+            };
+            topView.frameLayout.AddChidren(locationBtn);
+
+            Button textBtn = new Button
+            {
+                Height = Application.GetRealHeight(14),
+                Y = Application.GetRealHeight(57),
+                TextSize = LogicView.TextSize.text10,
+                TextColor = CSS.CSS_Color.textCancelColor,
+                Text = "骞夸笢骞垮窞甯傜暘绂哄尯鐭虫ゼ闀�",
+            };
+            topView.frameLayout.AddChidren(textBtn);
             topView.clickBackBtn.MouseUpEventHandler += (e, sen) =>
             {
                 RemoveFromParent();
diff --git a/HDL_ON/UI/UI2/3-Intelligence/IntelligencePage.cs b/HDL_ON/UI/UI2/3-Intelligence/IntelligencePage.cs
index d647195..85ad984 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/IntelligencePage.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/IntelligencePage.cs
@@ -606,8 +606,7 @@
                 else
                 {
                     //璺宠浆鍒伴�昏緫鐣岄潰
-                    UI2.Intelligence.Automation.MainView logicMainView = new UI2.Intelligence.Automation.MainView();
-                    logicMainView.SkipAddLogicPage();
+                    UI2.Intelligence.Automation.MainView.SkipAddLogicPage();
                 }
             };
         }
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Scene/CatchSceneAddPage.cs b/HDL_ON/UI/UI2/3-Intelligence/Scene/CatchSceneAddPage.cs
index 61abb45..352dc86 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Scene/CatchSceneAddPage.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Scene/CatchSceneAddPage.cs
@@ -1,7 +1,5 @@
 锘縰sing System;
 using System.Collections.Generic;
-using System.Threading;
-using HDL_ON.DAL.Server;
 using HDL_ON.Entity;
 using HDL_ON.UI.CSS;
 using Shared;
@@ -21,36 +19,6 @@
         private Button btnChooseZoneViewTitle;
         private VerticalScrolViewLayout functionListView;
         private Button btnComplete;
-
-        #region 鍥炬爣閫夋嫨閮ㄥ垎鍥炬爣
-        /// <summary>
-        /// 鑳屾櫙鍥鹃�夐」鍖哄煙
-        /// </summary>
-        FrameLayout pictureOptionView;
-        /// <summary>
-        /// 鑳屾櫙鍥鹃�夐」閫夋嫨鍖哄煙
-        /// </summary>
-        VerticalScrolViewLayout optionView;
-        /// <summary>
-        /// 榛樿鍥惧簱鎸夐挳
-        /// </summary>
-        Button btnDefaultGallery;
-        /// <summary>
-        /// 鎷嶇収鎸夐挳
-        /// </summary>
-        Button btnTakePicture;
-        /// <summary>
-        /// 鐩稿唽鎸夐挳
-        /// </summary>
-        Button btnAlbum;
-        /// <summary>
-        /// 鍙栨秷鎸夐挳
-        /// </summary>
-        Button btnCancel;
-        #endregion
-
-
-
         /// <summary>
         /// 鎹曟崏鐨勫尯鍩熷垪琛�
         /// </summary>
@@ -69,6 +37,7 @@
                 RemoveFromParent();
             };
         }
+
 
         public void LoadPage()
         {
@@ -105,14 +74,6 @@
 
             //2020-12-03 淇敼鍥剧墖鍔犺浇鏂规硶
             ImageUtlis.Current.LoadLocalOrNetworkImages(scene.ImagePath, addSceneImageView);
-
-            /// <summary>
-            /// 淇敼鍦烘櫙鑳屾櫙浜嬩欢
-            /// </summary>
-            addSceneImageView.MouseUpEventHandler = (sender, e) =>
-            {
-                LoadPictureOptionView();
-            };
 
             #region 鍦烘櫙鍚嶇Оrow
             sceneNameView = new FrameLayout()
@@ -213,6 +174,71 @@
                 BackgroundColor = CSS_Color.BackgroundColor,
             });
             #endregion
+            #region 鍦烘櫙寤舵椂row
+            /*
+            if (DB_ResidenceData.Instance.GatewayType == 1)
+            {
+                FrameLayout sceneDelayRow = new FrameLayout()
+                {
+                    Y = sceneNameView.Bottom,
+                    Height = Application.GetRealWidth(50),
+                };
+                contentView.AddChidren(sceneDelayRow);
+
+                Button btnSceneDelayRight = new Button()
+                {
+                    X = Application.GetRealWidth(339),
+                    Gravity = Gravity.CenterVertical,
+                    Width = Application.GetMinRealAverage(16),
+                    Height = Application.GetMinRealAverage(16),
+                    UnSelectedImagePath = "Public/Right.png",
+                };
+                sceneDelayRow.AddChidren(btnSceneDelayRight);
+
+                var btnSceneDelayInfo = new Button()
+                {
+                    Width = Application.GetRealWidth(327),
+                    TextAlignment = TextAlignment.CenterRight,
+                    TextColor = CSS_Color.PromptingColor1,
+                    TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+                    Text = scene.GetDelayText()
+                };
+                sceneDelayRow.AddChidren(btnSceneDelayInfo);
+
+                Button btnSceneDelayTitle = new Button()
+                {
+                    X = Application.GetRealWidth(16),
+                    //Width = Application.GetRealWidth(90),
+                    TextAlignment = TextAlignment.CenterLeft,
+                    TextColor = CSS_Color.FirstLevelTitleColor,
+                    TextSize = CSS_FontSize.TextFontSize,
+                    TextID = StringId.SceneDelay,
+                };
+                sceneDelayRow.AddChidren(btnSceneDelayTitle);
+
+                btnSceneDelayTitle.MouseUpEventHandler = (sender, e) =>
+                {
+                    Action<string> action = (obj) => {
+                        scene.delay = obj;
+                        btnSceneDelayInfo.Text = scene.GetDelayText();
+                    };
+                    Dictionary<string, string> items = new Dictionary<string, string>();
+                    items.Add("30", "30s");
+                    items.Add("60", "1min");
+                    items.Add("120", "2min");
+                    items.Add("300", "5min");
+                    new PublicAssmebly().SetSceneDelayDialog(items, action, scene.delay);
+                };
+
+                contentView.AddChidren(new Button()
+                {
+                    Y = sceneDelayRow.Bottom,
+                    Height = Application.GetRealHeight(8),
+                    BackgroundColor = CSS_Color.BackgroundColor,
+                });
+            }
+            */
+            #endregion
 
             #region 閫夋嫨鍖哄煙
             FrameLayout chooseZoneView = new FrameLayout()
@@ -247,6 +273,8 @@
                 BackgroundColor = CSS_Color.BackgroundColor,
             };
             contentView.AddChidren(btnLine1);
+
+
 
             #endregion
 
@@ -314,6 +342,8 @@
                 }
             };
         }
+
+
 
         /// <summary>
         /// 鍔犺浇鍔熻兘鍒楄〃
@@ -402,273 +432,6 @@
             }
         }
 
-        /// <summary>
-        /// 鍔犺浇鍥炬爣閫夋嫨閫夐」
-        /// </summary>
-        void LoadPictureOptionView()
-        {
-            var pView = new FrameLayout()
-            {
-                BackgroundColor = CSS_Color.DialogTransparentColor1,
-            };
-            bodyView.AddChidren(pView);
-
-            pictureOptionView = new FrameLayout()
-            {
-                Y = Application.GetRealHeight(445),
-                Height = Application.GetRealHeight(250),
-                AnimateSpeed = 0.3f,
-                Animate = Animate.DownToUp,
-            };
-            pView.AddChidren(pictureOptionView);
-
-            optionView = new VerticalScrolViewLayout()
-            {
-                Gravity = Gravity.CenterHorizontal,
-                Width = Application.GetRealWidth(343),
-                Height = Application.GetRealHeight(150),
-                BackgroundColor = CSS_Color.MainBackgroundColor,
-                Radius = (uint)Application.GetRealWidth(12),
-            };
-            pictureOptionView.AddChidren(optionView);
-
-            btnDefaultGallery = new Button()
-            {
-                Height = Application.GetRealHeight(50),
-                TextAlignment = TextAlignment.Center,
-                TextColor = CSS_Color.TextualColor,
-                SelectedTextColor = CSS_Color.MainColor,
-                TextSize = CSS_FontSize.SubheadingFontSize,
-                TextID = StringId.DefaultGallery,
-            };
-            optionView.AddChidren(btnDefaultGallery);
-
-            optionView.AddChidren(new Button() { Height = Application.GetRealHeight(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor });
-
-            btnTakePicture = new Button()
-            {
-                Height = Application.GetRealHeight(50),
-                TextAlignment = TextAlignment.Center,
-                TextColor = CSS_Color.TextualColor,
-                SelectedTextColor = CSS_Color.MainColor,
-                TextSize = CSS_FontSize.SubheadingFontSize,
-                TextID = StringId.TakePicture,
-            };
-            optionView.AddChidren(btnTakePicture);
-
-            optionView.AddChidren(new Button() { Height = Application.GetRealHeight(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor });
-
-            btnAlbum = new Button()
-            {
-                Height = Application.GetRealHeight(50),
-                TextAlignment = TextAlignment.Center,
-                TextColor = CSS_Color.TextualColor,
-                SelectedTextColor = CSS_Color.MainColor,
-                TextSize = CSS_FontSize.SubheadingFontSize,
-                TextID = StringId.Album,
-            };
-            optionView.AddChidren(btnAlbum);
-
-            optionView.AddChidren(new Button() { Height = Application.GetRealHeight(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor });
-
-            btnCancel = new Button()
-            {
-                Gravity = Gravity.CenterHorizontal,
-                Y = Application.GetRealHeight(8) + optionView.Bottom,
-                Width = Application.GetRealWidth(343),
-                Height = Application.GetRealHeight(50),
-                BackgroundColor = CSS_Color.MainBackgroundColor,
-                Radius = (uint)Application.GetRealWidth(12),
-                TextID = StringId.Cancel,
-                TextColor = CSS_Color.WarningColor,
-                TextSize = CSS_FontSize.SubheadingFontSize,
-            };
-            pictureOptionView.AddChidren(btnCancel);
-
-
-            LoadEvent_PictureOptionViewEventList(pView);
-        }
-
-        /// <summary>
-        /// 鍔犺浇鑳屾櫙鍥鹃�夋嫨鍖哄煙浜嬩欢鍒楄〃
-        /// </summary>
-        void LoadEvent_PictureOptionViewEventList(FrameLayout pView)
-        {
-            pictureOptionView.MouseUpEventHandler = (sender, e) =>
-            {
-                pictureOptionView.Parent.RemoveFromParent();
-            };
-            pView.MouseUpEventHandler = (sender, e) =>
-            {
-                pictureOptionView.Parent.RemoveFromParent();
-            };
-
-            btnCancel.MouseUpEventHandler = (sender, e) =>
-            {
-                pictureOptionView.Parent.RemoveFromParent();
-            };
-            btnTakePicture.MouseDownEventHandler = (sender, e) => {
-                btnTakePicture.IsSelected = true;
-            };
-            btnTakePicture.MouseUpEventHandler = (sender, e) =>
-            {
-                btnTakePicture.IsSelected = false;
-
-                var imageName = Guid.NewGuid().ToString();
-                CropImage.TakePicture((imagePath) =>
-                {
-                    CropImageCallBack(imagePath);
-
-                }, imageName, 4, 3);
-
-                pictureOptionView.Parent.RemoveFromParent();
-            };
-            btnAlbum.MouseDownEventHandler = (sender, e) => {
-                btnAlbum.IsSelected = true;
-            };
-
-            btnAlbum.MouseUpEventHandler = (sender, e) =>
-            {
-                btnAlbum.IsSelected = false;
-
-                //浠庣浉鍐岄�夋嫨鍥剧墖瑁佸壀
-                var imageName = Guid.NewGuid().ToString();
-                //var imageName = scene.sid;
-                CropImage.SelectPicture((imagePath) =>
-                {
-                    CropImageCallBack(imagePath);
-                }, imageName, 4, 3);
-
-
-                //if (pageTitleId == StringId.EditScene)
-                //{
-                //    scene.SaveFunctionData();
-                //}
-                pictureOptionView.Parent.RemoveFromParent();
-            };
-
-            btnDefaultGallery.MouseUpEventHandler = (sender, e) => {
-                pictureOptionView.Parent.RemoveFromParent();
-                Action<string> action = (obj) => {
-                    scene.ImagePath = obj;
-                    addSceneImageView.ImageBytes = null;//瑙e喅鏈塈mageBytes涓嶅姞杞絀magePath
-                    addSceneImageView.ImagePath = scene.ImagePath;
-                };
-
-                var galleryPage = new GalleryPage(scene.ImagePath, action);
-                MainPage.BasePageView.AddChidren(galleryPage);
-                galleryPage.LoadPage(true);
-                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-            };
-
-        }
-
-        /// <summary>
-        /// 瑁佸壀瀹岀収鐗囧洖璋冿紝缁熶竴澶勭悊
-        /// </summary>
-        /// <param name="imagePath">瑁佸壀鍚庣殑鐪熷疄璺緞</param>
-        /// <param name="imageName">鑷畾涔夌殑鍥剧墖鍚嶇О</param>
-        void CropImageCallBack(string selectImagePath)
-        {
-            if (string.IsNullOrEmpty(selectImagePath) == true)
-            {
-                return;
-            }
-
-            //涓婁紶鎴愬姛鍒板洖璋�
-            Action<string> uploadSuccessAction = (imageUrl) =>
-            {
-                //2020-12-03 闇�瑕佽鏈�鏂扮殑鍥剧墖璺緞鍚屾鍒颁簯绔�
-                scene.ImagePath = imageUrl;
-            };
-            //涓婁紶鍥剧墖鍒颁簯绔�
-            UploadImage(selectImagePath, addSceneImageView, scene, uploadSuccessAction);
-        }
-
-        /// <summary>
-        /// 涓婁紶鍥剧墖鏂规硶
-        /// </summary>
-        /// <param name="selectImagePath">瑁佸壀鍚庣殑鍥剧墖璺緞</param>
-        /// <param name="imageView"></param>
-        /// <param name="uploadSuccessAction"></param>
-        void UploadImage(string selectImagePath, ImageView imageView, Scene mScene, Action<string> uploadSuccessAction)
-        {
-            try
-            {
-                //MainPage.Log("SelectPicture 瑁佸壀鍥剧墖杩斿洖璺緞: " + selectImagePath);
-                //1.璇诲彇瑁佸壀鍚庣殑鍥剧墖锛岀劧鍚庡垹闄�
-                var imageBytes = Shared.IO.FileUtils.ReadFile(selectImagePath);
-                System.IO.File.Delete(selectImagePath);
-
-                var waitPage = new Loading();
-                bodyView.AddChidren(waitPage);
-                waitPage.Start(Language.StringByID(StringId.PleaseWait));
-                //寮�濮嬩笂浼�
-                new Thread(() =>
-                {
-                    try
-                    {
-                        var newImageName = mScene.name.Trim() + ".png";
-                        var uploadImageObj = new UploadImageObj()
-                        {
-                            prefix = "Scene" + Utlis.GetTimestamp(),
-                            fileName = newImageName,
-                            uid = mScene.sid,
-                            content = imageBytes,
-                        };
-
-                        var imageUrl = ImageUtlis.Current.UploadImage(uploadImageObj);
-                        if (!string.IsNullOrEmpty(imageUrl) && imageUrl.Contains(newImageName))
-                        {
-                            //涓婁紶鎴愬姛
-                            Application.RunOnMainThread(() =>
-                            {
-                                //Utlis.WriteLine("涓婁紶鎴愬姛锛�" + imageUrl);
-                                //1.2濡傛灉鏄嚜瀹氫箟鍥剧墖鍒犻櫎涔嬪墠鐨�
-                                if (!string.IsNullOrEmpty(imageView.ImagePath) && !imageView.ImagePath.Contains("Classification/Room/Roombg"))
-                                {
-                                    //Utlis.WriteLine("鍒犻櫎: " + imageView.ImagePath);
-                                    System.IO.File.Delete(imageView.ImagePath);
-                                }
-                                //閲嶅懡鍚嶄繚瀛�
-                                ImageUtlis.Current.WriteFileByBytes(imageUrl, imageBytes);
-                                imageView.ImagePath = null;
-                                imageView.ImageBytes = imageBytes;
-                                //涓婁紶鎴愬姛
-                                Utlis.ShowTip(Language.StringByID(StringId.UploadSuccessfully));
-                                uploadSuccessAction?.Invoke(imageUrl);
-                            });
-                        }
-                        else
-                        {
-                            //涓婁紶澶辫触
-                            Application.RunOnMainThread(() =>
-                            {
-                                //涓婁紶澶辫触
-                                Utlis.ShowTip(Language.StringByID(StringId.UploadFailed));
-                            });
-                        }
-
-                    }
-                    catch (Exception ex)
-                    {
-                    }
-                    finally
-                    {
-                        Application.RunOnMainThread(() =>
-                        {
-                            if (waitPage != null)
-                            {
-                                waitPage.RemoveFromParent();
-                                waitPage = null;
-                            }
-                        });
-                    }
-                })
-                { IsBackground = true }.Start();
-            }
-            catch { }
-        }
 
     }
 }
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirSend.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirSend.cs
index ced74cc..f140aab 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirSend.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirSend.cs
@@ -36,6 +36,12 @@
                 return Entity.DB_ResidenceData.Instance.CurrentRegion.id;
             }
         }
+
+        /// <summary>
+        /// 涔愭subAccessToken
+        /// </summary>
+        public static string LcSubAccessToken = "";
+
         /// <summary>
         /// 鏄惁涓哄叾浠栦富鐢ㄦ埛鍒嗕韩杩囨潵鐨勪綇瀹�
         /// </summary>
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Video/ObjectClass.cs b/HDL_ON/UI/UI2/FuntionControlView/Video/ObjectClass.cs
index 6114108..f6d8549 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Video/ObjectClass.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Video/ObjectClass.cs
@@ -7,6 +7,7 @@
     {
        
     }
+
     [Serializable]
     public class VideoClouds
     {
@@ -52,6 +53,7 @@
         public string flCmtId = string.Empty;
 
     }
+
     [Serializable]
     public class Call
     {
@@ -88,6 +90,7 @@
         /// </summary>
         public string flBindId = string.Empty;
     }
+
     [Serializable]
     public class CallView
     {
@@ -99,6 +102,7 @@
         public List<Call> callList = new List<Call>();
 
     }
+
     [Serializable]
     public class FlVideo
     {
@@ -112,4 +116,92 @@
         public string devType = string.Empty;
         public string uuid = string.Empty;
     }
+
+    /// <summary>
+    /// 鍙瀵硅(閫氱敤)
+    /// </summary>
+    [Serializable]
+    public class Video
+    {
+        /// <summary>
+        /// 瀛愯处鍙穉ccessToken
+        /// </summary>
+        public string subAccountToken = string.Empty;
+        /// <summary>
+        /// 璁惧鍚嶇О
+        /// </summary>
+        public string deviceName = string.Empty;
+        /// <summary>
+        /// 璁惧id銆佸簭鍒楀彿銆乽uid
+        /// </summary>
+        public string deviceId = string.Empty;
+        /// <summary>
+        /// 璁惧绫诲瀷:IMOUVISIAL(涔愭)銆�
+        /// </summary>
+        public string interphoneType = string.Empty;
+        /// <summary>
+        /// 涔愭playToken,棰勮鐢婚潰鏃跺繀椤讳娇鐢ㄧ殑鍙傛暟
+        /// </summary>
+        public string playToken = string.Empty;
+        /// <summary>
+        /// 鐘舵�侊細online
+        /// </summary>
+        public string status = string.Empty;
+        /// <summary>
+        /// 璁惧绫诲瀷锛�(1瀹ゅ唴鏈�,2瀹ゅ鏈猴紝3鍥村鏈猴紝4绠$悊鏈�,5浜屾纭鏈�)
+        /// </summary>
+        public string devType = string.Empty;
+        /// <summary>
+        /// 涓版灄鍙瀵硅data
+        /// </summary>
+        public VideoFlData flRoomBindVO = new VideoFlData();
+    }
+
+    /// <summary>
+    /// 涓版灄鍙瀵硅鏁版嵁
+    /// </summary>
+    [Serializable]
+    public class VideoFlData
+    {
+        /// <summary>
+        /// 涓版灄缁戝畾id锛坒lBindId锛�(userKey)
+        /// </summary>
+        public string id = string.Empty;
+        /// <summary>
+        /// 浣忓畢id
+        /// </summary>
+        public string homeId = string.Empty;
+        /// <summary>
+        /// 铏氭嫙鎵嬫満鍙�
+        /// </summary>
+        public string phone = string.Empty;
+        /// <summary>
+        /// 铏氭嫙韬唤璇佸彿鐮�
+        /// </summary>
+        public string idCard = string.Empty;
+        /// <summary>
+        /// 绀惧尯涓婚敭Id
+        /// </summary>
+        public string communtiyId = string.Empty;
+        /// <summary>
+        /// 涓版灄妤兼爧鍙�
+        /// </summary>
+        public string flBuildingId = string.Empty;
+        /// <summary>
+        /// 涓版灄妤兼爧鍚嶇О
+        /// </summary>
+        public string flBuildingName = string.Empty;
+        /// <summary>
+        /// 涓版灄鎴块棿鍚嶇О
+        /// </summary>
+        public string flRoomId = string.Empty;
+        /// <summary>
+        /// 涓版灄瀹夊叏瀵嗛挜
+        /// </summary>
+        public string flSecretKey = string.Empty;
+        /// <summary>
+        /// 涓版灄鐨勫皬鍖篒d
+        /// </summary>
+        public string flCmtId = string.Empty;
+    }
 }
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Video/VideoMainView.cs b/HDL_ON/UI/UI2/FuntionControlView/Video/VideoMainView.cs
index 109cdc4..de7c61b 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Video/VideoMainView.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Video/VideoMainView.cs
@@ -4,6 +4,7 @@
 using Shared;
 using HDL_ON.Stan;
 using ZXing.QrCode.Internal;
+using static HDL_ON.UI.UI2.FuntionControlView.Video.VideoMethod;
 
 namespace HDL_ON.UI.UI2.FuntionControlView.Video
 {
@@ -12,10 +13,9 @@
         /// <summary>
         /// 鍔犺浇鍙瀵硅UI
         /// </summary>
-        /// <param name="listVideo">闂ㄥ彛鏈哄垪琛�</param>
         /// <param name="listCall">閫氳瘽璁板綍鍒楄〃</param>
-        /// <param name="video">褰撳墠鐨勫彲瑙嗗璁�</param>
-        public void Show(List<FlVideo> listVideo, List<CallView> listCall, VideoClouds video)
+        /// <param name="videoList">鍙瀵硅鍒楄〃</param>
+        public void Show(List<CallView> listCall, List<Video> videoList)
         {
             #region 甯冨眬鐣岄潰
             this.BackgroundColor = MusicColor.ViewColor;
@@ -35,8 +35,8 @@
             pageView.AddChidren(view1);
             var view2 = new FrameLayout();
             pageView.AddChidren(view2);
-            ViewFrameLayout1(view1, listVideo, video);
-            ViewFrameLayout2(view2, listCall, video);
+            View1(view1, videoList);
+            View2(view2, listCall, videoList);
             Button btn11 = new Button
             {
                 X = Application.GetRealWidth(170),
@@ -107,13 +107,13 @@
             };
             #endregion
         }
+
         /// <summary>
         /// 绗竴涓晫闈�
         /// </summary>
         /// <param name="view1">鐖舵帶浠�</param>
-        /// <param name="list">闂ㄥ彛鏈哄垪琛�</param>
-        /// <param name="videoClouds">褰撳墠鐨勫彲瑙嗗璁�</param>
-        void ViewFrameLayout1(FrameLayout view1, List<FlVideo> list, VideoClouds videoClouds)
+        /// <param name="video">鍙瀵硅瀵硅薄</param>
+        void View1(FrameLayout view1, List<Video> videoList)
         {
 
 
@@ -190,23 +190,25 @@
                 Width = Application.GetRealWidth(327),
             };
             bjFl.AddChidren(vv);
-            if (list.Count > 0)
+
+            bool bol = haveFlVideo(videoList);
+            if (bol)
             {
                 //闂ㄧ浜岀淮鐮佸浐瀹氭湁鐨�,铏氭嫙涓�涓嚭鏉�
-                list.Add(new FlVideo { aliasName = Language.StringByID(StringId.menjinerweima), devType = "100" });
+                videoList.Add(new Video { deviceName = Language.StringByID(StringId.menjinerweima), interphoneType = "100" });
             }
             //鏁扮粍涓暟
             //int value = 15;
             //鍏堣绠楁暟鎹墍闇�瑕佺殑寰堥珮搴︼紱
             int l = 0;
-            if (list.Count % 3 == 0)
+            if (videoList.Count % 3 == 0)
             {
-                l = list.Count / 3;
+                l = videoList.Count / 3;
             }
             else
             {
 
-                l = (list.Count / 3) + 1;
+                l = (videoList.Count / 3) + 1;
             }
             var fL = new FrameLayout
             {
@@ -216,9 +218,9 @@
             vv.AddChidren(fL);
             int line = 0;
             #endregion
-            for (int i = 1, j = 0; i <= list.Count; i++, j++)
+            for (int i = 1, j = 0; i <= videoList.Count; i++, j++)
             {
-                var video = list[i - 1];
+                var video = videoList[i - 1];
                 #region
                 var fLayout = new FrameLayout
                 {
@@ -247,7 +249,7 @@
                     TextSize = TextSize.Text10,
                     TextColor = CSS.CSS_Color.TextualColor,
                     TextAlignment = TextAlignment.Center,
-                    Text = video.aliasName,
+                    Text = video.deviceName,
                 };
                 fLayout.AddChidren(deviceNameBtn);
 
@@ -265,11 +267,11 @@
                 //闂ㄥ彛鏈虹殑鐐瑰嚮浜嬩欢
                 clickBtn.MouseUpEventHandler += (sender, e) =>
                 {
-                    var flVideo = clickBtn.Tag as FlVideo;
-                    if (flVideo.devType == "100")
+                    var video2 = clickBtn.Tag as Video;
+                    if (video2.devType == "100")
                     {
                         //闂ㄧ浜岀淮鐮佸浐瀹氭湁鐨�
-                        VideoSend.GetQRcode(this, videoClouds, (tag, paw) =>
+                        VideoSend.GetQRcode(this, video2, (tag, paw) =>
                         {
                             if (tag)
                             {
@@ -281,36 +283,44 @@
                     }
                     else
                     {
-                        if (string.IsNullOrEmpty(flVideo.uuid))
+
+                        if (string.IsNullOrEmpty(video.deviceId))
                         {
                             new Intelligence.Automation.LogicView.TipPopView().FlashingBox(Language.StringByID(StringId.peizhicanshuyouyichang));
                             return;
                         }
+
+                        //Unitno = Intent.GetStringExtra("unitno");
+                        //HomeID = Intent.GetStringExtra("HomeID");
+
+
                         ESVideoInfo eSVideoInfo = new ESVideoInfo
                         {
-                            ESVideoUUID = getUuid(flVideo.uuid),
-                            DeviceName = flVideo.aliasName,
-                            roomno = videoClouds.flRoomId,
-                            unitno = videoClouds.flBuildingId,
+                            ESVideoUUID = getUuid(video.deviceId),
+                            DeviceName = video.deviceName,
+                            roomno = video.flRoomBindVO.flRoomId,
+                            unitno = video.flRoomBindVO.flBuildingId,
+                            uuid= getUuid(video.deviceId),
+                            cmtID=video.flRoomBindVO.flCmtId,
+                            Lc_AccessToken = video.subAccountToken,
+                            Lc_DeviceId = video.deviceId,
+                            Lc_Psk = video.deviceName,
+                            Lc_PlayToken = video.playToken,
                         };
-                        ESOnVideo.Current.ShowESVideoMonitor(eSVideoInfo);
+                        ESOnVideo.Current.ShowESVideoMonitor(eSVideoInfo, video.interphoneType);
                     }
-
-
                 };
             }
-
-
         }
+
         /// <summary>
         /// 绗簩涓晫闈�
         /// </summary>
         /// <param name="view2">鐖舵帶浠�</param>
         /// <param name="listCall">閫氳瘽璁板綍鍒楄〃</param>
-        /// <param name="video">褰撳墠鐨勫彲瑙嗗璁�</param>
-        void ViewFrameLayout2(FrameLayout view2, List<CallView> listCall, VideoClouds video) 
+        /// <param name="videoList">鍙瀵硅鍒楄〃</param>
+        void View2(FrameLayout view2, List<CallView> listCall, List<Video> videoList)
         {
-
             var bjFl = new FrameLayout
             {
                 Y = Application.GetRealHeight(24),
@@ -349,20 +359,20 @@
                 TextAlignment = TextAlignment.CenterLeft,
                 TextID = StringId.baolu30,
             };
-            //bjFl.AddChidren(regionBtn);
+            bjFl.AddChidren(regionBtn);
 
             var vv = new VerticalRefreshLayout
             {
                 X = Application.GetRealWidth(16),
-                Y = Application.GetRealHeight(58),
-                Height = Application.GetRealHeight(458),
+                Y = Application.GetRealHeight(58 + 17),
+                Height = Application.GetRealHeight(458 - 17),
                 Width = Application.GetRealWidth(295),
             };
             bjFl.AddChidren(vv);
             vv.BeginHeaderRefreshingAction += () =>
             {
                 VideoMethod videoMethod = new VideoMethod();
-                var list = videoMethod.GetCall(video.id);
+                var list = videoMethod.GetCall();
                 RefreshView(vv, list);
                 //鍏抽棴鍒锋柊View锛�
                 vv.EndHeaderRefreshing();
@@ -370,6 +380,7 @@
             RefreshView(vv, listCall);
 
         }
+
         /// <summary>
         /// 閫氳瘽璁板綍鍒锋柊鐣岄潰
         /// </summary>
@@ -395,6 +406,7 @@
                     frameLayout60.btnTime.Text = getTime(call.callTime);
                     ///鍛煎彨鐘舵�侊紙0锛氭湭鎺ワ紱1锛氬凡鎺ワ紱2锛氭嫆鎺ワ級锛涙槸鍚﹀紑閿侊紱
                     frameLayout60.btnStateText.Text = getStateText(call.callStatus) + "," + getUnlockText(call.isUnlock);
+
                 }
 
             }
@@ -406,11 +418,11 @@
         /// </summary>
         /// <param name="flVideo"></param>
         /// <param name="iconBtn">鍥炬爣</param>
-        private void getIconAndText(FlVideo flVideo, Button iconBtn)
+        private void getIconAndText(Video Video, Button iconBtn)
         {
             //(1瀹ゅ唴鏈�,2瀹ゅ鏈猴紝3鍥村鏈猴紝4绠$悊鏈�,5浜屾纭鏈�)
             string iconstr = "";
-            switch (flVideo.devType)
+            switch (Video.devType)
             {
                 case "1":
                     {
@@ -461,10 +473,7 @@
         {
             var utcTime = Convert.ToDateTime(str);
             var dateTime = TimeZoneInfo.ConvertTimeFromUtc(utcTime, TimeZoneInfo.Local);
-            // var monday = dateTime.ToString("MM") + Language.StringByID(StringId.month) + dateTime.ToString("dd") + Language.StringByID(StringId.day);
-            var monday = dateTime.ToString("MM") + "/" + dateTime.ToString("dd");
-            var time = dateTime.ToString("HH") + ":" + dateTime.ToString("mm");
-            return monday + " " + time;
+            return dateTime.ToString("HH") + ":" + dateTime.ToString("mm");
         }
         /// <summary>
         /// 鑾峰彇鍛煎彨鐘舵�佹枃鏈�
@@ -501,14 +510,16 @@
         /// <returns></returns>
         private string getUnlockText(bool if_bool)
         {
+            string s = "";
             if (if_bool)
             {
-                return Language.StringByID(StringId.yikaisuo);
+                s = Language.StringByID(StringId.yikaisuo);
             }
             else
             {
-                return Language.StringByID(StringId.weikaisuo);
+                s = Language.StringByID(StringId.weikaisuo);
             }
+            return s;
         }
         /// <summary>
         /// 鑾峰彇uuid
@@ -528,6 +539,22 @@
             }
         }
 
+
+        //鍒ゆ柇鏄惁鏈� 涓版灄鍙瀵硅
+        private bool haveFlVideo(List<Video> videoList)
+        {
+            bool bol = false;
+
+            for (int i = 0; i < videoList.Count; i++)
+            {
+                var _video = videoList[i];
+                if (_video.interphoneType == "FLVI")
+                    return true;
+            }
+
+            return bol;
+        }
+
     }
 
 }
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Video/VideoMethod.cs b/HDL_ON/UI/UI2/FuntionControlView/Video/VideoMethod.cs
index c7d4797..cb881c5 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Video/VideoMethod.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Video/VideoMethod.cs
@@ -3,6 +3,8 @@
 using HDL_ON.UI.UI2.PersonalCenter.PirDevice;
 using System.Collections.Generic;
 using Shared;
+using HDL_ON.Entity;
+using Newtonsoft.Json;
 
 namespace HDL_ON.UI.UI2.FuntionControlView.Video
 {
@@ -13,24 +15,31 @@
         /// </summary>
         /// <param name="frameLayout">log鐖舵帶浠�</param>
         /// <param name="video">鍙瀵硅瀵硅薄</param>
-        public void MianView(FrameLayout frameLayout, VideoClouds video)
+        public void MianView(FrameLayout frameLayout)
         {
             //鍔犺浇log
             Loading loading = new Loading();
             frameLayout.AddChidren(loading);
             loading.Start();
-            List<FlVideo> listESVideoInfo = new List<FlVideo>();
             List<CallView> listCall = new List<CallView>();
             new System.Threading.Thread(() =>
             {
                 try
                 {
-                    listESVideoInfo = VideoSend.GetVideoInfoList(video);
-                    listCall = GetCall(video.id);
+                    // 杩欓噷鍐嶈幏鍙栦竴娆¤澶囧垪琛紙鏇存柊鏁版嵁锛�
+                    var videoInfo = VideoSend.GetVideoInfoList();
+                    if (videoInfo.Code == StateCode.SUCCESS)
+                    {
+                        string data_str = videoInfo.Data.ToString();
+                        FunctionList.List.videoIntercom = JsonConvert.DeserializeObject<List<UI.UI2.FuntionControlView.Video.Video>>(data_str);
+                    }
+
+                    // 鑾峰彇閫氳瘽璁板綍
+                    listCall = GetCall();
                 }
                 catch
                 {
-
+                    //
                 }
                 finally
                 {
@@ -39,13 +48,14 @@
                         loading.Hide();
                         var mainView = new VideoMainView();
                         MainPage.BasePageView.AddChidren(mainView);
-                        mainView.Show(listESVideoInfo, listCall, video);
+                        mainView.Show(listCall, FunctionList.List.videoIntercom);
                         MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                     });
                 }
             })
             { IsBackground = true }.Start();
         }
+
         /// <summary>
         /// 鑾峰彇鍙瀵硅
         /// </summary>
@@ -68,18 +78,18 @@
                  }
              }, "鑾峰彇鍙瀵硅", "fram", frame, null, tag);
         } 
+
         /// <summary>
         /// 鑾峰彇鍘嗗彶閫氳瘽璁板綍
         /// </summary>
-        /// <param name="id"></param>
-        public List<CallView> GetCall(string id)
+        public List<CallView> GetCall()
         {
             List<CallView> callViewList = new List<CallView>();
             try
             {
 
                 List<Call> listCall = new List<Call>();
-                var responsePackNew = VideoSend.GetCall(id);
+                var responsePackNew = VideoSend.GetCall();
                 if (responsePackNew != null && responsePackNew.Code == "0" && responsePackNew.Data.ToString() != "")
                 {
                     var jobject = Newtonsoft.Json.Linq.JObject.Parse(responsePackNew.Data.ToString());
@@ -132,6 +142,7 @@
             catch { }
             return callViewList;
         } 
+
         /// <summary>
         /// 鍙戦�佸懡浠ょ嚎绋�
         /// </summary>
@@ -165,11 +176,12 @@
                 {
                     if (str == "鑾峰彇鍙瀵硅")
                     {
-                        responsePackNew = VideoSend.GetVideo();
+                        // responsePackNew = VideoSend.GetVideo();
+                        responsePackNew = VideoSend.GetVideoInfoList();
                     }
                     else if (str == "鑾峰彇閫氳瘽璁板綍")
                     {
-                        responsePackNew = VideoSend.GetCall(videoObj.id);
+                        responsePackNew = VideoSend.GetCall();
                     }
 
                 }
@@ -206,6 +218,7 @@
 
 
         }
+
         /// <summary>
         /// 闅忔満瀵嗙爜6浣�
         /// </summary>
@@ -220,6 +233,7 @@
             }
             return code;
         } 
+
         /// <summary>
         /// 鑾峰彇褰撳墠鏃堕棿鎴�
         /// </summary>
@@ -234,6 +248,7 @@
             return ((long)(DateTime.Now - startTime).TotalSeconds).ToString(); // 鐩稿樊绉掓暟
             
         }
+
         /// <summary>
         /// 鑾峰彇褰撳墠鏃堕棿鎴�
         /// </summary>
@@ -246,7 +261,6 @@
             System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 褰撳湴鏃跺尯
             return ((long)(DateTime.Now.AddDays(1) - startTime).TotalSeconds).ToString(); // 鐩稿樊绉掓暟
         }
-     
 
     }
 }
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Video/VideoSend.cs b/HDL_ON/UI/UI2/FuntionControlView/Video/VideoSend.cs
index 5a8a945..ae759bb 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Video/VideoSend.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Video/VideoSend.cs
@@ -22,16 +22,18 @@
             var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_FL_Check);
             return responsePackNew;
         }
+
         /// <summary>
         /// 鑾峰彇閫氳瘽璁板綍
         /// </summary>
         /// <returns></returns>
-        public static ResponsePackNew GetCall(string flBindId)
+        public static ResponsePackNew GetCall()
         {
-            var jObject = new JObject { { "homeId", PirSend.HomeId }, { "flBindId", flBindId }, { "pageSize", int.MaxValue } };
+            var jObject = new JObject { { "homeId", PirSend.HomeId }, { "pageSize", int.MaxValue } };
             var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_FL_GetCallList);
             return responsePackNew;
         }
+
         /// <summary>
         /// 鑾峰彇闂ㄥ彛鏈哄垪琛�(1瀹ゅ唴鏈�,2瀹ゅ鏈猴紝3鍥村鏈猴紝4绠$悊鏈�,5浜屾纭鏈�)
         /// </summary>
@@ -64,21 +66,36 @@
             catch { }
             return eSVideoInfosList;
         }
+
+        /// <summary>
+        /// 鑾峰彇鍙瀵硅璁惧鍒楄〃
+        /// </summary>
+        /// <returns></returns>
+        public static ResponsePackNew GetVideoInfoList()
+        {
+            var jobject = new JObject();
+            jobject.Add("homeId", PirSend.HomeId);//1382596006055460866
+            var requestJson = HttpUtil.GetSignRequestJson(jobject);//鏁版嵁绛惧悕
+            // 鑾峰彇鍙瀵硅璁惧鍒楄〃
+            var revertObj = HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_VideoDeviceList, requestJson);
+            return revertObj;
+        }
+
         /// <summary>
         /// 涓婃姤鍔ㄦ�佸紑閿佸瘑鐮�(娉ㄦ剰锛氬瘑鐮佹湁鍙兘寤舵椂1鍒嗛挓鐢熸晥)
         /// </summary>
-        public static void GetQRcode(FrameLayout frame, VideoClouds video, Action<bool, string> action)
+        public static void GetQRcode(FrameLayout frame, Video video, Action<bool, string> action)
         {
             ///鏍囪鏄惁鎴愬姛
             bool if_bool = false;
             //涓存椂瀵嗙爜
             string pwd = VideoMethod.GetCode();
-            var jobject = new JObject();
            jobject.Add("communityID", video.flCmtId);//绀惧尯ID
+            var jobject = new JObject();
            jobject.Add("communityID", video.flRoomBindVO.flCmtId);//绀惧尯ID
             jobject.Add("fromTime", VideoMethod.GetCurrentTimeStamp());//寮�濮嬫椂闂�
             jobject.Add("validTime", VideoMethod.GetTomorrowTimeStamp());//鏈夋晥鏃堕棿
-            jobject.Add("unitno", video.flBuildingId);//鍗曞厓鍙�
-            jobject.Add("roomno", video.flRoomId);//鎴块棿鍙�
-            jobject.Add("code", pwd);
            jobject.Add("userKey", video.id);
            jobject.Add("timestamp", VideoMethod.GetCurrentTimeStamp());
            jobject.Add("secretKey", video.flSecretKey);
            jobject.Add("method", "setdynamicpwd");
            jobject.Add("numTimes", "5");
+            jobject.Add("unitno", video.flRoomBindVO.flBuildingId);//鍗曞厓鍙�
+            jobject.Add("roomno", video.flRoomBindVO.flRoomId);//鎴块棿鍙�
+            jobject.Add("code", pwd);
            jobject.Add("userKey", video.flRoomBindVO.id);
            jobject.Add("timestamp", VideoMethod.GetCurrentTimeStamp());
            jobject.Add("secretKey", video.flRoomBindVO.flSecretKey);
            jobject.Add("method", "setdynamicpwd");
            jobject.Add("numTimes", "5");
             //鍔犺浇log
             Loading loading = new Loading();
             frame.AddChidren(loading);
@@ -90,29 +107,13 @@
                     var str = HttpWebRequest(NewAPI.API_POST_FL_QRcode, jobject.ToString(), "POST");
                     if (!string.IsNullOrEmpty(str))
                     {
-                        if (str.Contains("status"))
+                        var json = JObject.Parse(str);
+                        if (json != null)
                         {
-                            //var json = JObject.Parse(str);
-                            //if (json != null)
-                            //{
-                            //    var stateCode = json["status"].ToString();
-                            //    if (stateCode == "0")
-                            //    {
-                            //        if_bool = true;
-                            //    }
-                            //}
-                            if_bool = true;
-                        }
-                        else {
-                            var json = JObject.Parse(str);
-                            if (json != null)
+                            var stateCode = json["status"].ToString();
+                            if (stateCode == "0")
                             {
-                                var stateCode = json["desc"].ToString();
-                                Application.RunOnMainThread(() =>
-                                {
-                                    //閿欒鎻愮ず
-                                    new Intelligence.Automation.LogicView.TipPopView().FlashingBox(stateCode);
-                                });
+                                if_bool = true;
                             }
                         }
                     }
@@ -131,6 +132,7 @@
             })
             { IsBackground = true }.Start();
         }
+
         /// <summary>
         /// 涓嬭浇鍥剧墖
         /// </summary>
@@ -158,6 +160,7 @@
             })
             { IsBackground = true }.Start();
         }
+
         /// <summary>
         ///  璇锋眰鏈嶅姟鍣ㄧ殑鏂规硶(鏀寔璇锋眰鏂瑰紡涓篜OST/GET)
         /// </summary>
@@ -201,6 +204,7 @@
                 return null;
             }
         }
+
         /// <summary>
         ///璇锋眰鏈嶅姟鍣紙涓庝綇瀹呮湁鍏�:渚嬪锛沨omeId锛� 
         /// </summary>
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Video/View/FrameLayout50.cs b/HDL_ON/UI/UI2/FuntionControlView/Video/View/FrameLayout50.cs
index 53c9190..fa8d245 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Video/View/FrameLayout50.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Video/View/FrameLayout50.cs
@@ -8,10 +8,10 @@
         /// <summary>
         /// 涓绘帶浠禫iew
         /// </summary>
-        public RowLayout frameLayout = new RowLayout
+        public FrameLayout frameLayout = new FrameLayout
         {
             Height = Application.GetRealHeight(50),
-            LineColor = CSS.CSS_Color.view,
+            // BackgroundColor = CSS.CSS_Color.view,
         };
         /// <summary>
         /// 鏂囨湰鎻忚堪
@@ -36,7 +36,7 @@
         /// View鐨勬柟娉�
         /// </summary>
         /// <returns></returns>
-        public RowLayout FLayoutView()
+        public FrameLayout FLayoutView()
         {
             frameLayout.AddChidren(btnText);
             frameLayout.AddChidren(btnClick);
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Video/View/FrameLayout60.cs b/HDL_ON/UI/UI2/FuntionControlView/Video/View/FrameLayout60.cs
index dd1c231..9eb9fc4 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Video/View/FrameLayout60.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Video/View/FrameLayout60.cs
@@ -8,10 +8,10 @@
         /// <summary>
         /// 涓绘帶浠禫iew
         /// </summary>
-        public RowLayout frameLayout = new RowLayout
+        public FrameLayout frameLayout = new FrameLayout
         {
             Height = Application.GetRealHeight(60),
-            LineColor = CSS.CSS_Color.view,
+            //BackgroundColor = CSS.CSS_Color.view,
         };
 
         /// <summary>
@@ -37,10 +37,10 @@
             Y = Application.GetRealHeight(10),
             Width = Application.GetRealWidth(120),
             Height = Application.GetRealHeight(20),
-            TextColor = CSS.CSS_Color.textCancelColor,
+            TextColor = CSS.CSS_Color.textColor,
             TextSize = TextSize.text14,
             TextAlignment=TextAlignment.CenterLeft,
-            //Text = "15:01",
+            Text = "15:01",
         };
         /// <summary>
         /// 鐘舵�佹枃鏈�
@@ -53,6 +53,7 @@
             TextSize = TextSize.text12,
             TextColor = CSS.CSS_Color.textCancelColor,
             TextAlignment = TextAlignment.CenterLeft,
+            Text = "宸叉帴鍚�, 宸插紑閿�",
         };
 
 
@@ -87,7 +88,7 @@
         /// View鐨勬柟娉�
         /// </summary>
         /// <returns></returns>
-        public RowLayout FLayoutView()
+        public FrameLayout FLayoutView()
         {
             frameLayout.AddChidren(btnText);
             frameLayout.AddChidren(btnTime);
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Video/View/ShowDialog.cs b/HDL_ON/UI/UI2/FuntionControlView/Video/View/ShowDialog.cs
index cbb2043..d5a2001 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Video/View/ShowDialog.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Video/View/ShowDialog.cs
@@ -125,12 +125,12 @@
             //瀵嗙爜
             Button btnpaw = new Button()
             {
-                X=Application.GetRealWidth(95),
+                X=Application.GetRealWidth(100),
                 Y = Application.GetRealHeight(62),
                 Height = Application.GetRealHeight(32),
-                Width = Application.GetRealWidth(82+5),
+                Width = Application.GetRealWidth(82),
                 TextColor = MusicColor.SelectedColor,
-                TextSize =18,//24
+                TextSize =24,
                 TextAlignment = TextAlignment.Center,
                 IsBold = true,
                 Text = str1,
@@ -143,7 +143,7 @@
                 Width = Application.GetRealWidth(20),
                 Height = Application.GetRealWidth(20),
                 UnSelectedImagePath = "LoginIcon/ShowPasswordIcon.png",
-                SelectedImagePath = "LoginIcon/HidePasswordIcon.png",
+                SelectedImagePath = "LoginIcon/HidePasswordIcon.png",
             };
             whiteView.AddChidren(iconBtn);
             //浜岀淮鐮�
diff --git a/HDL_ON/UI/UI2/UserPageBLL.cs b/HDL_ON/UI/UI2/UserPageBLL.cs
index e48e51e..b7c69dd 100644
--- a/HDL_ON/UI/UI2/UserPageBLL.cs
+++ b/HDL_ON/UI/UI2/UserPageBLL.cs
@@ -1,4 +1,5 @@
 锘縰sing System;
+//using Android.Content;
 using Shared;
 
 namespace HDL_ON.UI

--
Gitblit v1.8.0