From cf7623fe25a008b4e128c6083e362578e2a1e3b0 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期三, 29 三月 2023 14:29:09 +0800
Subject: [PATCH] 2023年03月29日14:23:28

---
 HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs |  112 +++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 106 insertions(+), 6 deletions(-)

diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs
index 87fe48e..2496657 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs
@@ -26,15 +26,115 @@
         {
             Action<string, string> action = (s, a) =>
             {
-                if (brand.productBrand == "")
+                if (brand.productBrand == "IMOU")
                 {
 #if __ANDROID__
-                    var backTemp = new AddLcCam();
-                    backTemp.backAction = () =>
+
+                    FunctionList.List.GetIpCamImouList();
+
+
+                    if (string.IsNullOrEmpty(Com.Utils.HdlToLcUtils.Instance.SubAccessToken))
                     {
-                        Load3tyBrandDeviceList();
-                    };
-                    Com.Utils.HdlToLcUtils.Instance.AddCamera(backTemp);
+
+                        var waitPage = new Loading();
+                        MainPage.BaseView.AddChidren(waitPage);
+                        waitPage.Start("");
+                        new System.Threading.Thread(() =>
+                        {
+                            try
+                            {
+
+#if DEBUG
+                                Com.Utils.HdlToLcUtils.Instance.ShowErrorInfo(true);
+#endif
+
+                                var http = new HttpServerRequest();
+                                var pack = http.GetLcSubAccountToken();
+                                if (pack.Code == StateCode.SUCCESS)
+                                {
+                                    if (pack.Data == null || string.IsNullOrEmpty(pack.Data.ToString()))
+                                    {
+                                        Application.RunOnMainThread(() =>
+                                        {
+                                            new PublicAssmebly().TipMsg(Language.StringByID(StringId.Tip), Language.StringByID(StringId.Get3tyIotInfoFailed));
+                                            return;
+                                        });
+                                    }
+                                    Com.Utils.HdlToLcUtils.Instance.InitData(Shared.Application.Activity, "HDL-HOME-APP-TEST", "WeJ8TY88vbakCcnvH8G1tDUqzLWY8yss", OnAppConfig.Instance.RequestHttpsHost);
+                                    Com.Utils.HdlToLcUtils.Instance.HomeId = DB_ResidenceData.Instance.CurrentRegion.id;
+                                    Com.Utils.HdlToLcUtils.Instance.Token = UserInfo.Current.AccessToken;
+                                    Com.Utils.HdlToLcUtils.Instance.SubAccessToken = pack.Data.ToString();
+#if __ANDROID__
+                                    Application.RunOnMainThread(() =>
+                                    {
+                                        try
+                                        {
+                                            
+                                            var result = Com.Utils.HdlToLcUtils.Instance.CheckCameraPermissions();
+                                            if (result)
+                                            {
+                                                var backTemp = new AddLcCam();
+                                                backTemp.backAction = () =>
+                                                {
+                                                    Load3tyBrandDeviceList();
+                                                };
+                                                Com.Utils.HdlToLcUtils.Instance.AddCamera(backTemp);
+                                            }
+                                            else
+                                            {
+                                                Com.Utils.HdlToLcUtils.Instance.RequestCameraPermissions();
+                                            }
+                                        }
+                                        catch (Exception ex)
+                                        {
+
+                                        }
+                                    });
+#endif
+                                }
+                                else
+                                {
+                                    Application.RunOnMainThread(() =>
+                                    {
+                                        new PublicAssmebly().TipMsg(Language.StringByID(StringId.Tip), Language.StringByID(StringId.huoqushujushibao) + $"({pack.Code})");
+                                    });
+                                }
+                            }
+                            catch (Exception ex)
+                            {
+                                MainPage.Log("鍔犺浇涔愭鎽勫儚澶村紓甯�");
+                            }
+                            finally
+                            {
+                                Application.RunOnMainThread(() =>
+                                {
+                                    if (waitPage != null)
+                                    {
+                                        waitPage.RemoveFromParent();
+                                        waitPage = null;
+                                    }
+                                });
+                            }
+                        })
+                        { IsBackground = true }.Start();
+                    }
+                    else
+                    {
+                        var result = Com.Utils.HdlToLcUtils.Instance.CheckCameraPermissions();
+                        if (result)
+                        {
+                            var backTemp = new AddLcCam();
+                            backTemp.backAction = () =>
+                            {
+                                Load3tyBrandDeviceList();
+                            };
+                            Com.Utils.HdlToLcUtils.Instance.AddCamera(backTemp);
+                        }
+                        else
+                        {
+                            Com.Utils.HdlToLcUtils.Instance.RequestCameraPermissions();
+                        }
+                    }
 #endif
                 }
                 else

--
Gitblit v1.8.0