From 0f5a53c7b36c27a0f2bec12e6119207edb6860f8 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期二, 29 十月 2019 14:29:21 +0800 Subject: [PATCH] 修改主页卡死问题 --- ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlShardLogic.cs | 21 ++++++++++++++------- 1 files changed, 14 insertions(+), 7 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlShardLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlShardLogic.cs index ef0bb03..66555a5 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlShardLogic.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlShardLogic.cs @@ -282,26 +282,33 @@ { //杩樺師璁惧瀵硅薄 tempRoom.DeviceUIList.Clear(); - foreach (string uiPath in tempRoom.DeviceUIFilePathList) + for (int i = 0; i < tempRoom.DeviceUIFilePathList.Count; i++) { - string deviceFile = uiPath.Replace("DeviceUI_", string.Empty); + string deviceFile = tempRoom.DeviceUIFilePathList[i]; //杩欎釜璁惧鏂囦欢鍖归厤寰楀埌鎴块棿 listDeviceFile.Remove(deviceFile); if (this.IsFileExists(deviceFile) == false) { + //绉婚櫎鎺夎繖涓笉瀵瑰姴鐨勮矾寰� + tempRoom.DeviceUIFilePathList.RemoveAt(i); + i--; continue; } - tempRoom.DeviceUIList.Add(Common.LocalDevice.Current.GetDeviceUI(uiPath)); + tempRoom.DeviceUIList.Add(Common.LocalDevice.Current.GetDeviceUI(deviceFile)); } //杩樺師鍦烘櫙瀵硅薄 tempRoom.SceneUIList.Clear(); - foreach (string uiPath in tempRoom.SceneUIFilePathList) + for (int i = 0; i < tempRoom.SceneUIFilePathList.Count; i++) { + string uiPath = tempRoom.SceneUIFilePathList[i]; //杩欎釜鍦烘櫙鏂囦欢鍖归厤寰楀埌鎴块棿 listSceneFile.Remove(uiPath); var byteData = this.GetShardFileContent(uiPath); if (byteData == null) { + //绉婚櫎鎺夎繖涓笉瀵瑰姴鐨勮矾寰� + tempRoom.SceneUIFilePathList.RemoveAt(i); + i--; continue; } string valueData = System.Text.Encoding.UTF8.GetString(byteData); @@ -813,7 +820,7 @@ this.AddShardFile(device.FilePath); //璁惧鐨刄I - var deviceUi = $"DeviceUI_{device.FilePath}"; + var deviceUi = device.FilePath; if (roomTemp.DeviceUIFilePathList.Contains(deviceUi) == false) { roomTemp.DeviceUIFilePathList.Add(deviceUi); @@ -1229,7 +1236,7 @@ string deviceFileName = device.FilePath; //绉婚櫎璺緞鍒楄〃 - roomTemp.DeviceUIFilePathList.Remove($"DeviceUI_{device.FilePath}"); + roomTemp.DeviceUIFilePathList.Remove(device.FilePath); if (listHadShard.Contains(deviceFileName) == true) { //鍏朵粬鍦烘櫙鍒嗕韩鏈夎繖涓澶�,鎵�浠ヤ笉鍒犻櫎杩欎釜璁惧鐨勬牴婧愭枃浠�,鍙槸鎶婃埧闂寸殑璁惧鍒楄〃璺緞绉婚櫎 @@ -1564,7 +1571,7 @@ //璁惧 foreach (var deviceUi in roomTemp.DeviceUIFilePathList) { - string deviceFile = deviceUi.Replace("DeviceUI_", string.Empty); + string deviceFile = deviceUi; if (listDeleteFile.Contains(deviceFile) == true) { //鍥犱负涓�涓洖璺彧鑳藉垎閰嶄竴涓尯鍩�,鎵�浠ュ彲浠ョ洿鎺ュ垽鏂� -- Gitblit v1.8.0