黄学彪
2020-06-18 2450c12c825ad4d78d1572da2fa421706db2df2f
ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceSearchForm.cs
@@ -15,7 +15,7 @@
        /// <summary>
        /// 新上报的设备
        /// </summary>
        private Dictionary<string, List<CommonDevice>> dicNewDevice = new Dictionary<string, List<CommonDevice>>();
        private List<CommonDevice> listNewDevice = new List<CommonDevice>();
        /// <summary>
        /// 显示设备线程是否已经开启
        /// </summary>
@@ -106,6 +106,7 @@
            //进度条
            this.btnProgressBar = new ProgressRowBar(559, 29);
            btnProgressBar.ProgressBarGoback = false;
            btnProgressBar.Gravity = Gravity.CenterHorizontal;
            btnProgressBar.Y = Application.GetRealHeight(861);
            bodyFrameLayout.AddChidren(btnProgressBar);
@@ -154,8 +155,6 @@
                return;
            }
            lock (this.dicNewDevice)
            {
                var jobject = Newtonsoft.Json.Linq.JObject.Parse(resultData);
                CommonDevice.DeviceInfoData info = Newtonsoft.Json.JsonConvert.DeserializeObject<CommonDevice.DeviceInfoData>(jobject["Data"].ToString());
                if (info.DriveCode != 0)
@@ -181,11 +180,6 @@
                device.IsOnline = 1;
                Common.LocalDevice.Current.AddDeviceToMemory(ref device);
 
                if (this.dicNewDevice.ContainsKey(device.DeviceAddr) == false)
                {
                    this.dicNewDevice[device.DeviceAddr] = new List<CommonDevice>();
                }
                //刷新超时时间
                this.waitDeviceTimeOut = 20;
@@ -193,11 +187,10 @@
                HdlDeviceFixedAttributeLogic.Current.SetAllFixedAttributeToDevice(device);
                //不需要200端点的那个设备  2020.01.13 变更:ota也加进来
                this.dicNewDevice[device.DeviceAddr].Add(device);
            this.listNewDevice.Add(device);
                //有新设备,开启显示设备信息界面的线程(里面会等待三秒这样)
                this.StartShowDeviceAddSuccessFormThread();
            }
        }
        #endregion
@@ -231,11 +224,16 @@
                //目前就弄一个
                Application.RunOnMainThread(() =>
                {
                    foreach (var listDevice in this.dicNewDevice.Values)
                    var listDevice = new List<CommonDevice>();
                    for (int i = 0; i < this.listNewDevice.Count; i++)
                    {
                        var device = this.listNewDevice[i];
                        if (device.DeviceAddr != this.listNewDevice[0].DeviceAddr)
                        {
                            continue;
                        }
                        listDevice.Add(device);
                        //重新变更UI
                        foreach (var device in listDevice)
                        {
                            if (device is OTADevice)
                            {
                                continue;
@@ -245,8 +243,6 @@
                        }
                        //显示设备信息画面
                        this.ShowDeviceAddSuccessForm(listDevice);
                        break;
                    }
                });
            });
        }