wjc
2023-03-29 adf7df175e590b7d9e0f33c0c2ea1d2897da6301
HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs
@@ -39,26 +39,39 @@
        }
        #region  --------- 跳转到Android那边的方法(萤石视频门锁) --------
        #region  --------- 跳转到Android,ios那边的方法(萤石视频门锁) --------
        /// <summary>
        /// android,ios源生添加设备到云端成功后回调方法
        /// 再读取云端的上萤石设备列表
        /// <paramref name="spk"/>spk</param>
        /// </summary>
        public void SkipAddDeviceActivity(string spk)
        {
            this.InitializationAndroidData((isBools) =>
            {
                if (!isBools)
                this.MainThread(() =>
                {
                    this.MainThread(() =>
                    if (!isBools)
                    {
                        this.ShowTip("先获取萤石云子账号token失败。");
                    });
                }
                    }
#if __IOS__
                //跳转添加萤石设备
                ezsdkDelegate = new IosIHdlInterface();
                ezsdkDelegate.mAction += (serials) => {
                    var list = VideDoorLockSend.Current.GetVideoDoorLockDeviceList(SPK.VideoDoorLock);
                    if (list.Count > 0)
                    {
                        var function = list.Find((o) => o.sid == serials);
                        if (function != null)
                        {
                            this.SaveFunctionFile(function);
                        }
                    }
                };
                EZSDK.IOS.EZSDK.SharedInstance().Delegate= ezsdkDelegate;
                EZSDK.IOS.EZSDK.SharedInstance().AddEzvizMonitorWithDeviceType(spk);
#else
                HDLEzvizSdk.Instance.JumpToEZScanActivity(Application.Activity,spk);
@@ -82,6 +95,10 @@
                }));
#endif
                    });
            });
@@ -116,7 +133,8 @@
                    {
                        dialog.Close();
#if __IOS__
                        //打开萤石视频界面
                        EZSDK.IOS.EZSDK.SharedInstance().PlayWithDeviceSerial(deviceSerial, deviceId, spk);
#else
                    HDLEzvizSdk.Instance.JumpToEZRealPlayActivity(Application.Activity,deviceId,deviceSerial,spk);
#endif
@@ -128,6 +146,9 @@
                else
                {
#if __IOS__
                    //打开萤石视频界面
                    EZSDK.IOS.EZSDK.SharedInstance().PlayWithDeviceSerial(deviceSerial, deviceId, spk);
#else
                    HDLEzvizSdk.Instance.JumpToEZRealPlayActivity(Application.Activity,deviceId,deviceSerial,spk);
#endif
@@ -148,6 +169,8 @@
            {
#if __IOS__
                //打开萤石历史记录界面
                EZSDK.IOS.EZSDK.SharedInstance().ToDeviceMsgListView(deviceId);
#else
                HDLEzvizSdk.Instance.JumpLockHistoryActivity(Application.Activity, deviceId);
#endif
@@ -172,8 +195,10 @@
                    });
                }
#if __IOS__
                //打开萤石临时密码界面
                EZSDK.IOS.EZSDK.SharedInstance().ToTemPassView(deviceId);
#else
                HDLEzvizSdk.Instance.JumpTempPasswordActivity(Application.Activity, deviceId);
                HDLEzvizSdk.Instance.JumpTempPasswordActivity(Application.Activity, deviceId);
#endif
            });
@@ -256,21 +281,15 @@
        #endregion
        /// <summary>
        /// 萤石视频门锁的图标
        /// <param name="comerom">来自那里</param>
        /// 获取门锁型号列表
        /// </summary>
        public string GetVideoDoorLockIcon(Comerom comerom)
        /// <returns>返回结果不会为null</returns>
        public List<string> GetVideoDoorLockLockModelsList()
        {
            if (comerom == Comerom.collect)
            {
                return "FunctionIcon/DoorLock/VideoDoorLockOpen.png";
            }
            else
            {
                return "FunctionIcon/DoorLock/VideoDoorlockClose.png";
            }
            return VideDoorLockSend.Current.GetVideoDoorLockLockModelsList();
        }
        #region  --------- 功能文件保存,删除 --------
        /// <summary>
        /// 保存本地文件
@@ -296,6 +315,23 @@
            MainPage.Log($"文件删除->{function.name}-->{function.spk}");
        }
        #endregion
        /// <summary>
        /// 萤石视频门锁的图标
        /// <param name="comerom">来自那里</param>
        /// </summary>
        public string GetVideoDoorLockIcon(Comerom comerom)
        {
            if (comerom == Comerom.collect)
            {
                return "FunctionIcon/DoorLock/VideoDoorLockOpen.png";
            }
            else
            {
                return "FunctionIcon/DoorLock/VideoDoorlockClose.png";
            }
        }
        /// <summary>
        /// 获取Loading对象
        /// </summary>
@@ -447,26 +483,27 @@
        }
#if __IOS__
        ///// <summary>
        ///// 专门定义给Ios回调用着,没有特殊含义
        ///// </summary>
        //public class IosIHdlInterface : Shared.IOS.HDLLinphoneSDK.HDLLinphoneCallDelegate
        //{
        //    Action<bool, string> mAction;
        //    public IosIHdlInterface(Action<bool, string> action)
        //    {
        //        mAction = action;
        //    }
        //    /// <summary>
        //    ///
        //    /// </summary>
        //    /// <param name="p0">true是入网成功(源生回调返回)</param>
        //    /// <param name="p1">设备的序列化(源生回调返回)</param>
        //    public void AddCallback(bool p0, string p1)
        //    {
        //        mAction?.Invoke(p0, p1);
        //    }
        //}
        IosIHdlInterface ezsdkDelegate;
        /// <summary>
        /// 专门定义给Ios回调用着,没有特殊含义
        /// </summary>
        public class IosIHdlInterface : EZSDK.IOS.EZSDKDelegate
        {
          public  Action<string> mAction;
            public IosIHdlInterface()
            {
            }
            /// <summary>
            ///
            /// </summary>
            /// <param name="p0">true是入网成功(源生回调返回)</param>
            /// <param name="p1">设备的序列化(源生回调返回)</param>
            public override void AddDeviceSuccessed(string deviceSerial)
            {
                mAction?.Invoke(deviceSerial);
            }
        }
#else
        /// <summary>
        /// 专门定义给安卓回调用着,没有特殊含义