refactor : 重构网络下载模块

This commit is contained in:
何冠峰
2026-01-07 10:23:11 +08:00
parent 454afc9ba6
commit ee67a55c0f
20 changed files with 215 additions and 95 deletions
@@ -57,6 +57,11 @@ namespace YooAsset
}
#region 自定义参数
/// <summary>
/// 自定义参数:UnityWebRequest 创建委托
/// </summary>
public UnityWebRequestCreator WebRequestCreator { private set; get; }
/// <summary>
/// 禁用Unity的网络缓存
/// </summary>
@@ -118,7 +123,15 @@ namespace YooAsset
public virtual void SetParameter(string name, object value)
{
if (name == FileSystemParametersDefine.DISABLE_UNITY_WEB_CACHE)
if (name == FileSystemParametersDefine.DOWNLOAD_BACKEND)
{
DownloadBackend = (IDownloadBackend)value;
}
else if (name == FileSystemParametersDefine.UNITY_WEB_REQUEST_CREATOR)
{
WebRequestCreator = (UnityWebRequestCreator)value;
}
else if (name == FileSystemParametersDefine.DISABLE_UNITY_WEB_CACHE)
{
DisableUnityWebCache = Convert.ToBoolean(value);
}
@@ -146,10 +159,15 @@ namespace YooAsset
// 创建默认的下载后台接口
if (DownloadBackend == null)
DownloadBackend = new UnityWebRequestBackend(DownloadSystemHelper.UnityWebRequestCreater);
DownloadBackend = new UnityWebRequestBackend(WebRequestCreator);
}
public virtual void OnDestroy()
{
if (DownloadBackend != null)
{
DownloadBackend.Dispose();
DownloadBackend = null;
}
}
public virtual bool Belong(PackageBundle bundle)
@@ -237,4 +255,4 @@ namespace YooAsset
}
#endregion
}
}
}