Skip to content

Commit 789267f

Browse files
author
Jiang Yin
committed
资源更新增加停止更新功能
1 parent 2a5f772 commit 789267f

File tree

8 files changed

+958
-90
lines changed

8 files changed

+958
-90
lines changed

Libraries/GameFramework.dll

4.5 KB
Binary file not shown.

Libraries/GameFramework.xml

Lines changed: 524 additions & 35 deletions
Large diffs are not rendered by default.

Scripts/Editor/Inspector/DownloadComponentInspector.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -94,10 +94,10 @@ public override void OnInspectorGUI()
9494
{
9595
int index = 0;
9696
string[] data = new string[downloadInfos.Length + 1];
97-
data[index++] = "Download Path,Serial Id,Priority,Status";
97+
data[index++] = "Download Path,Serial Id,Tag,Priority,Status";
9898
foreach (TaskInfo downloadInfo in downloadInfos)
9999
{
100-
data[index++] = Utility.Text.Format("{0},{1},{2},{3}", downloadInfo.Description, downloadInfo.SerialId.ToString(), downloadInfo.Priority.ToString(), downloadInfo.Status.ToString());
100+
data[index++] = Utility.Text.Format("{0},{1},{2},{3},{4}", downloadInfo.Description, downloadInfo.SerialId.ToString(), downloadInfo.Tag ?? string.Empty, downloadInfo.Priority.ToString(), downloadInfo.Status.ToString());
101101
}
102102

103103
File.WriteAllLines(exportFileName, data, Encoding.UTF8);
@@ -144,7 +144,7 @@ private void OnEnable()
144144

145145
private void DrawDownloadInfo(TaskInfo downloadInfo)
146146
{
147-
EditorGUILayout.LabelField(downloadInfo.Description, Utility.Text.Format("[SerialId]{0} [Priority]{1} [Status]{2}", downloadInfo.SerialId.ToString(), downloadInfo.Priority.ToString(), downloadInfo.Status.ToString()));
147+
EditorGUILayout.LabelField(downloadInfo.Description, Utility.Text.Format("[SerialId]{0} [Tag]{1} [Priority]{2} [Status]{3}", downloadInfo.SerialId.ToString(), downloadInfo.Tag ?? "<None>", downloadInfo.Priority.ToString(), downloadInfo.Status.ToString()));
148148
}
149149

150150
private void RefreshTypeNames()

Scripts/Editor/Inspector/WebRequestComponentInspector.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -80,10 +80,10 @@ public override void OnInspectorGUI()
8080
{
8181
int index = 0;
8282
string[] data = new string[webRequestInfos.Length + 1];
83-
data[index++] = "WebRequest Uri,Serial Id,Priority,Status";
83+
data[index++] = "WebRequest Uri,Serial Id,Tag,Priority,Status";
8484
foreach (TaskInfo webRequestInfo in webRequestInfos)
8585
{
86-
data[index++] = Utility.Text.Format("{0},{1},{2},{3}", webRequestInfo.Description, webRequestInfo.SerialId.ToString(), webRequestInfo.Priority.ToString(), webRequestInfo.Status.ToString());
86+
data[index++] = Utility.Text.Format("{0},{1},{2},{3},{4}", webRequestInfo.Description, webRequestInfo.SerialId.ToString(), webRequestInfo.Tag ?? string.Empty, webRequestInfo.Priority.ToString(), webRequestInfo.Status.ToString());
8787
}
8888

8989
File.WriteAllLines(exportFileName, data, Encoding.UTF8);
@@ -129,7 +129,7 @@ private void OnEnable()
129129

130130
private void DrawWebRequestInfo(TaskInfo webRequestInfo)
131131
{
132-
EditorGUILayout.LabelField(webRequestInfo.Description, Utility.Text.Format("[SerialId]{0} [Priority]{1} [Status]{2}", webRequestInfo.SerialId.ToString(), webRequestInfo.Priority.ToString(), webRequestInfo.Status.ToString()));
132+
EditorGUILayout.LabelField(webRequestInfo.Description, Utility.Text.Format("[SerialId]{0} [Tag]{1} [Priority]{2} [Status]{3}", webRequestInfo.SerialId.ToString(), webRequestInfo.Tag ?? "<None>", webRequestInfo.Priority.ToString(), webRequestInfo.Status.ToString()));
133133
}
134134

135135
private void RefreshTypeNames()

Scripts/Runtime/Download/DownloadComponent.cs

Lines changed: 118 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77

88
using GameFramework;
99
using GameFramework.Download;
10+
using System.Collections.Generic;
1011
using UnityEngine;
1112

1213
namespace UnityGameFramework.Runtime
@@ -186,6 +187,54 @@ private void Start()
186187
}
187188
}
188189

190+
/// <summary>
191+
/// 根据下载任务的序列编号获取下载任务的信息。
192+
/// </summary>
193+
/// <param name="serialId">要获取信息的下载任务的序列编号。</param>
194+
/// <returns>下载任务的信息。</returns>
195+
public TaskInfo GetDownloadInfo(int serialId)
196+
{
197+
return m_DownloadManager.GetDownloadInfo(serialId);
198+
}
199+
200+
/// <summary>
201+
/// 根据下载任务的标签获取下载任务的信息。
202+
/// </summary>
203+
/// <param name="tag">要获取信息的下载任务的标签。</param>
204+
/// <returns>下载任务的信息。</returns>
205+
public TaskInfo[] GetDownloadInfos(string tag)
206+
{
207+
return m_DownloadManager.GetDownloadInfos(tag);
208+
}
209+
210+
/// <summary>
211+
/// 根据下载任务的标签获取下载任务的信息。
212+
/// </summary>
213+
/// <param name="tag">要获取信息的下载任务的标签。</param>
214+
/// <param name="results">下载任务的信息。</param>
215+
public void GetDownloadInfos(string tag, List<TaskInfo> results)
216+
{
217+
m_DownloadManager.GetDownloadInfos(tag, results);
218+
}
219+
220+
/// <summary>
221+
/// 获取所有下载任务的信息。
222+
/// </summary>
223+
/// <returns>所有下载任务的信息。</returns>
224+
public TaskInfo[] GetAllDownloadInfos()
225+
{
226+
return m_DownloadManager.GetAllDownloadInfos();
227+
}
228+
229+
/// <summary>
230+
/// 获取所有下载任务的信息。
231+
/// </summary>
232+
/// <param name="results">所有下载任务的信息。</param>
233+
public void GetAllDownloadInfos(List<TaskInfo> results)
234+
{
235+
m_DownloadManager.GetAllDownloadInfos(results);
236+
}
237+
189238
/// <summary>
190239
/// 增加下载任务。
191240
/// </summary>
@@ -194,7 +243,19 @@ private void Start()
194243
/// <returns>新增下载任务的序列编号。</returns>
195244
public int AddDownload(string downloadPath, string downloadUri)
196245
{
197-
return AddDownload(downloadPath, downloadUri, DefaultPriority, null);
246+
return AddDownload(downloadPath, downloadUri, null, DefaultPriority, null);
247+
}
248+
249+
/// <summary>
250+
/// 增加下载任务。
251+
/// </summary>
252+
/// <param name="downloadPath">下载后存放路径。</param>
253+
/// <param name="downloadUri">原始下载地址。</param>
254+
/// <param name="tag">下载任务的标签。</param>
255+
/// <returns>新增下载任务的序列编号。</returns>
256+
public int AddDownload(string downloadPath, string downloadUri, string tag)
257+
{
258+
return AddDownload(downloadPath, downloadUri, tag, DefaultPriority, null);
198259
}
199260

200261
/// <summary>
@@ -206,7 +267,7 @@ public int AddDownload(string downloadPath, string downloadUri)
206267
/// <returns>新增下载任务的序列编号。</returns>
207268
public int AddDownload(string downloadPath, string downloadUri, int priority)
208269
{
209-
return AddDownload(downloadPath, downloadUri, priority, null);
270+
return AddDownload(downloadPath, downloadUri, null, priority, null);
210271
}
211272

212273
/// <summary>
@@ -218,7 +279,33 @@ public int AddDownload(string downloadPath, string downloadUri, int priority)
218279
/// <returns>新增下载任务的序列编号。</returns>
219280
public int AddDownload(string downloadPath, string downloadUri, object userData)
220281
{
221-
return AddDownload(downloadPath, downloadUri, DefaultPriority, userData);
282+
return AddDownload(downloadPath, downloadUri, null, DefaultPriority, userData);
283+
}
284+
285+
/// <summary>
286+
/// 增加下载任务。
287+
/// </summary>
288+
/// <param name="downloadPath">下载后存放路径。</param>
289+
/// <param name="downloadUri">原始下载地址。</param>
290+
/// <param name="tag">下载任务的标签。</param>
291+
/// <param name="priority">下载任务的优先级。</param>
292+
/// <returns>新增下载任务的序列编号。</returns>
293+
public int AddDownload(string downloadPath, string downloadUri, string tag, int priority)
294+
{
295+
return AddDownload(downloadPath, downloadUri, tag, priority, null);
296+
}
297+
298+
/// <summary>
299+
/// 增加下载任务。
300+
/// </summary>
301+
/// <param name="downloadPath">下载后存放路径。</param>
302+
/// <param name="downloadUri">原始下载地址。</param>
303+
/// <param name="tag">下载任务的标签。</param>
304+
/// <param name="userData">用户自定义数据。</param>
305+
/// <returns>新增下载任务的序列编号。</returns>
306+
public int AddDownload(string downloadPath, string downloadUri, string tag, object userData)
307+
{
308+
return AddDownload(downloadPath, downloadUri, tag, DefaultPriority, userData);
222309
}
223310

224311
/// <summary>
@@ -231,33 +318,50 @@ public int AddDownload(string downloadPath, string downloadUri, object userData)
231318
/// <returns>新增下载任务的序列编号。</returns>
232319
public int AddDownload(string downloadPath, string downloadUri, int priority, object userData)
233320
{
234-
return m_DownloadManager.AddDownload(downloadPath, downloadUri, priority, userData);
321+
return AddDownload(downloadPath, downloadUri, null, priority, userData);
235322
}
236323

237324
/// <summary>
238-
/// 移除下载任务。
325+
/// 增加下载任务。
326+
/// </summary>
327+
/// <param name="downloadPath">下载后存放路径。</param>
328+
/// <param name="downloadUri">原始下载地址。</param>
329+
/// <param name="tag">下载任务的标签。</param>
330+
/// <param name="priority">下载任务的优先级。</param>
331+
/// <param name="userData">用户自定义数据。</param>
332+
/// <returns>新增下载任务的序列编号。</returns>
333+
public int AddDownload(string downloadPath, string downloadUri, string tag, int priority, object userData)
334+
{
335+
return m_DownloadManager.AddDownload(downloadPath, downloadUri, tag, priority, userData);
336+
}
337+
338+
/// <summary>
339+
/// 根据下载任务的序列编号移除下载任务。
239340
/// </summary>
240341
/// <param name="serialId">要移除下载任务的序列编号。</param>
241-
public void RemoveDownload(int serialId)
342+
/// <returns>是否移除下载任务成功。</returns>
343+
public bool RemoveDownload(int serialId)
242344
{
243-
m_DownloadManager.RemoveDownload(serialId);
345+
return m_DownloadManager.RemoveDownload(serialId);
244346
}
245347

246348
/// <summary>
247-
/// 移除所有下载任务
349+
/// 根据下载任务的标签移除下载任务
248350
/// </summary>
249-
public void RemoveAllDownloads()
351+
/// <param name="tag">要移除下载任务的标签。</param>
352+
/// <returns>移除下载任务的数量。</returns>
353+
public int RemoveDownloads(string tag)
250354
{
251-
m_DownloadManager.RemoveAllDownloads();
355+
return m_DownloadManager.RemoveDownloads(tag);
252356
}
253357

254358
/// <summary>
255-
/// 获取所有下载任务的信息
359+
/// 移除所有下载任务
256360
/// </summary>
257-
/// <returns>所有下载任务的信息。</returns>
258-
public TaskInfo[] GetAllDownloadInfos()
361+
/// <returns>移除下载任务的数量。</returns>
362+
public int RemoveAllDownloads()
259363
{
260-
return m_DownloadManager.GetAllDownloadInfos();
364+
return m_DownloadManager.RemoveAllDownloads();
261365
}
262366

263367
/// <summary>

Scripts/Runtime/Resource/EditorResourceComponent.cs

Lines changed: 39 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -860,6 +860,14 @@ public void UpdateResources(string resourceGroupName, UpdateResourcesCompleteCal
860860
throw new NotSupportedException("UpdateResources");
861861
}
862862

863+
/// <summary>
864+
/// 停止更新资源。
865+
/// </summary>
866+
public void StopUpdateResources()
867+
{
868+
throw new NotSupportedException("StopUpdateResources");
869+
}
870+
863871
/// <summary>
864872
/// 校验资源包。
865873
/// </summary>
@@ -870,6 +878,24 @@ public bool VerifyResourcePack(string resourcePackPath)
870878
throw new NotSupportedException("VerifyResourcePack");
871879
}
872880

881+
/// <summary>
882+
/// 获取所有加载资源任务的信息。
883+
/// </summary>
884+
/// <returns>所有加载资源任务的信息。</returns>
885+
public TaskInfo[] GetAllLoadAssetInfos()
886+
{
887+
throw new NotSupportedException("GetAllLoadAssetInfos");
888+
}
889+
890+
/// <summary>
891+
/// 获取所有加载资源任务的信息。
892+
/// </summary>
893+
/// <param name="results">所有加载资源任务的信息。</param>
894+
public void GetAllLoadAssetInfos(List<TaskInfo> results)
895+
{
896+
throw new NotSupportedException("GetAllLoadAssetInfos");
897+
}
898+
873899
/// <summary>
874900
/// 检查资源是否存在。
875901
/// </summary>
@@ -1477,12 +1503,21 @@ public IResourceGroup GetResourceGroup(string resourceGroupName)
14771503
}
14781504

14791505
/// <summary>
1480-
/// 获取所有加载资源任务的信息
1506+
/// 获取所有资源组
14811507
/// </summary>
1482-
/// <returns>所有加载资源任务的信息。</returns>
1483-
public TaskInfo[] GetAllLoadAssetInfos()
1508+
/// <returns>所有资源组。</returns>
1509+
public IResourceGroup[] GetAllResourceGroups()
14841510
{
1485-
throw new NotSupportedException("GetAllLoadAssetInfos");
1511+
throw new NotSupportedException("GetAllResourceGroups");
1512+
}
1513+
1514+
/// <summary>
1515+
/// 获取所有资源组。
1516+
/// </summary>
1517+
/// <param name="results">所有资源组。</param>
1518+
public void GetAllResourceGroups(List<IResourceGroup> results)
1519+
{
1520+
throw new NotSupportedException("GetAllResourceGroups");
14861521
}
14871522

14881523
private bool HasFile(string assetName)

Scripts/Runtime/Resource/ResourceComponent.cs

Lines changed: 40 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
using GameFramework.ObjectPool;
1212
using GameFramework.Resource;
1313
using System;
14+
using System.Collections.Generic;
1415
using UnityEngine;
1516

1617
namespace UnityGameFramework.Runtime
@@ -875,6 +876,14 @@ public void UpdateResources(string resourceGroupName, UpdateResourcesCompleteCal
875876
m_ResourceManager.UpdateResources(resourceGroupName, updateResourcesCompleteCallback);
876877
}
877878

879+
/// <summary>
880+
/// 停止更新资源。
881+
/// </summary>
882+
public void StopUpdateResources()
883+
{
884+
m_ResourceManager.StopUpdateResources();
885+
}
886+
878887
/// <summary>
879888
/// 校验资源包。
880889
/// </summary>
@@ -885,6 +894,24 @@ public bool VerifyResourcePack(string resourcePackPath)
885894
return m_ResourceManager.VerifyResourcePack(resourcePackPath);
886895
}
887896

897+
/// <summary>
898+
/// 获取所有加载资源任务的信息。
899+
/// </summary>
900+
/// <returns>所有加载资源任务的信息。</returns>
901+
public TaskInfo[] GetAllLoadAssetInfos()
902+
{
903+
return m_ResourceManager.GetAllLoadAssetInfos();
904+
}
905+
906+
/// <summary>
907+
/// 获取所有加载资源任务的信息。
908+
/// </summary>
909+
/// <param name="results">所有加载资源任务的信息。</param>
910+
public void GetAllLoadAssetInfos(List<TaskInfo> results)
911+
{
912+
m_ResourceManager.GetAllLoadAssetInfos(results);
913+
}
914+
888915
/// <summary>
889916
/// 检查资源是否存在。
890917
/// </summary>
@@ -1334,12 +1361,21 @@ public IResourceGroup GetResourceGroup(string resourceGroupName)
13341361
}
13351362

13361363
/// <summary>
1337-
/// 获取所有加载资源任务的信息
1364+
/// 获取所有资源组
13381365
/// </summary>
1339-
/// <returns>所有加载资源任务的信息。</returns>
1340-
public TaskInfo[] GetAllLoadAssetInfos()
1366+
/// <returns>所有资源组。</returns>
1367+
public IResourceGroup[] GetAllResourceGroups()
13411368
{
1342-
return m_ResourceManager.GetAllLoadAssetInfos();
1369+
return m_ResourceManager.GetAllResourceGroups();
1370+
}
1371+
1372+
/// <summary>
1373+
/// 获取所有资源组。
1374+
/// </summary>
1375+
/// <param name="results">所有资源组。</param>
1376+
public void GetAllResourceGroups(List<IResourceGroup> results)
1377+
{
1378+
m_ResourceManager.GetAllResourceGroups(results);
13431379
}
13441380

13451381
/// <summary>

0 commit comments

Comments
 (0)