From 05ce435c3b58e53eeab04c672affdeeab75f3036 Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期五, 15 十一月 2019 14:41:39 +0800
Subject: [PATCH] 2019.11.15-1

---
 ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceUpdateLogic.cs |   44 ++++++++++++++++++++------------------------
 1 files changed, 20 insertions(+), 24 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceUpdateLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceUpdateLogic.cs
index e07eeb3..e9135f8 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceUpdateLogic.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceUpdateLogic.cs
@@ -19,6 +19,7 @@
         /// <para> 0:鏇存柊鐘舵�佹甯稿彉鍖�,鍚庨潰鐨勫�间负鐘舵�佸彉鏇寸殑鏂囨湰缈昏瘧</para>
         /// <para> 1:鍗囩骇鎴愬姛</para>
         /// <para> 2:涓诲姩缁堟鍗囩骇</para>
+        /// <para> 3:浠庣瓑寰呬腑鍙栨秷(鐩墠杩樻病鏈夌敤)</para>
         /// </summary>
         public Action<int, string> UpdateStatuChangedEvent = null;
         /// <summary>
@@ -92,7 +93,9 @@
                 {
                     FirmwareUpdateResourse.dicDeviceUpdateList.Remove(otaDevice.DeviceAddr);
                 }
+                //鍙栨秷
                 this.UpdateStatu = UpdateStatuMode.None;
+                this.UpdateStatuChangedEvent?.Invoke(3, "");
                 return;
             }
             //濡傛灉瀹冩湁鐘舵�侊紝鍒欒〃绀轰箣鍓嶅畠琚粈涔堥敊璇腑鏂簡
@@ -382,12 +385,11 @@
             {
                 this.zbGateway.ReportAction -= this.UpdateDeviceProgress;
 
-                new System.Threading.Thread(async () =>
+                HdlThreadLogic.Current.RunThread(async () =>
                 {
                     //缁堟鍗囩骇
                     await this.otaDevice.KillUpdateAsync(this.zbGateway, 200);
-                })
-                { IsBackground = true }.Start();
+                });
 
                 this.UpdateStatu = UpdateStatuMode.DeviceUpdateFail;
                 return;
@@ -556,7 +558,7 @@
             //鍗囩骇鎴愬姛
             this.UpdateStatu = UpdateStatuMode.UpdateSuccess;
 
-            new System.Threading.Thread(() =>
+            HdlThreadLogic.Current.RunThread(() =>
             {
                 System.Threading.Thread.Sleep(3000);
 
@@ -578,22 +580,18 @@
                 //绉婚櫎浜嬩欢
                 HdlDeviceImageInfoLogic.Current.RemoveDeviceFirmwareVersionThread(otaDevice);
 
-                Application.RunOnMainThread(() =>
-                {
-                    //璁剧疆杩涘害鍊肩洿鎺ヤ负100%
-                    this.ProgressEvent?.Invoke(100);
-                    //鐘舵�佸彉鏇�
-                    this.IsFinishUpdate = true;
-                    //鍗囩骇瀹屾垚
-                    this.UpdateStatu = UpdateStatuMode.UpdateFinish;
+                //璁剧疆杩涘害鍊肩洿鎺ヤ负100%
+                this.ProgressEvent?.Invoke(100);
+                //鐘舵�佸彉鏇�
+                this.IsFinishUpdate = true;
+                //鍗囩骇瀹屾垚
+                this.UpdateStatu = UpdateStatuMode.UpdateFinish;
 
-                    HdlFirmwareUpdateLogic.DoUpdateNextFirmware();
+                HdlFirmwareUpdateLogic.DoUpdateNextFirmware();
 
-                    //璁惧鍗囩骇鎴愬姛!
-                    this.UpdateStatuChangedEvent?.Invoke(1, Language.StringByID(R.MyInternationalizationString.uDeviceUpdateSuccess));
-                });
-            })
-            { IsBackground = true }.Start();
+                //璁惧鍗囩骇鎴愬姛!
+                this.UpdateStatuChangedEvent?.Invoke(1, Language.StringByID(R.MyInternationalizationString.uDeviceUpdateSuccess));
+            });
         }
 
         #endregion
@@ -636,7 +634,7 @@
         private void StartDownLoadTimeOutThread()
         {
             this.downLoadTimeOutCount = 30;
-            new System.Threading.Thread(() =>
+            HdlThreadLogic.Current.RunThread(() =>
             {
                 while (true)
                 {
@@ -665,8 +663,7 @@
                         break;
                     }
                 }
-            })
-            { IsBackground = true }.Start();
+            });
         }
 
         /// <summary>
@@ -691,7 +688,7 @@
         private void StartUpdateTimeOutThread()
         {
             this.UpdateTimeOutCount = 60;
-            new System.Threading.Thread(() =>
+            HdlThreadLogic.Current.RunThread(() =>
             {
                 while (true)
                 {
@@ -719,8 +716,7 @@
                         break;
                     }
                 }
-            })
-            { IsBackground = true }.Start();
+            });
         }
 
         /// <summary>

--
Gitblit v1.8.0