mirror of
https://github.com/tuyoogame/YooAsset.git
synced 2026-05-27 11:10:11 +00:00
feat : add WebNetwork file system
This commit is contained in:
@@ -46,7 +46,7 @@ namespace YooAsset
|
||||
assetBundleDecryptor: _fileCache.Config.AssetBundleDecryptor,
|
||||
downloadBackend: _fileCache.Config.DownloadBackend,
|
||||
downloadVerifyLevel: _fileCache.Config.DownloadVerifyLevel,
|
||||
watchdogTimeout: _fileCache.Config.WatchdogTimeout,
|
||||
watchdogTimeout: 0,
|
||||
downloadRetryPolicy: _fileCache.Config.DownloadRetryPolicy,
|
||||
downloadUrlPolicy: _fileCache.Config.DownloadUrlPolicy);
|
||||
_loadBundleOp = new LoadWebEncryptedAssetBundleOperation(encryptedOptions);
|
||||
@@ -58,7 +58,7 @@ namespace YooAsset
|
||||
candidateUrls: urls,
|
||||
platformStrategy: _fileCache.Config.PlatformStrategy,
|
||||
downloadBackend: _fileCache.Config.DownloadBackend,
|
||||
watchdogTimeout: _fileCache.Config.WatchdogTimeout,
|
||||
watchdogTimeout: 0,
|
||||
disableUnityWebCache: _fileCache.Config.DisableUnityWebCache,
|
||||
downloadRetryPolicy: _fileCache.Config.DownloadRetryPolicy,
|
||||
downloadUrlPolicy: _fileCache.Config.DownloadUrlPolicy);
|
||||
|
||||
@@ -44,7 +44,7 @@ namespace YooAsset
|
||||
rawBundleDecryptor: _fileCache.Config.RawBundleDecryptor,
|
||||
downloadBackend: _fileCache.Config.DownloadBackend,
|
||||
downloadVerifyLevel: _fileCache.Config.DownloadVerifyLevel,
|
||||
watchdogTimeout: _fileCache.Config.WatchdogTimeout,
|
||||
watchdogTimeout: 0,
|
||||
downloadRetryPolicy: _fileCache.Config.DownloadRetryPolicy,
|
||||
downloadUrlPolicy: _fileCache.Config.DownloadUrlPolicy);
|
||||
_loadBundleOp = new LoadWebRawBundleOperation(options);
|
||||
|
||||
@@ -7,11 +7,6 @@ namespace YooAsset
|
||||
{
|
||||
internal readonly struct Configuration
|
||||
{
|
||||
/// <summary>
|
||||
/// 看门狗超时时间
|
||||
/// </summary>
|
||||
public int WatchdogTimeout { get; }
|
||||
|
||||
/// <summary>
|
||||
/// 禁用 Unity 内置网络缓存
|
||||
/// </summary>
|
||||
@@ -57,12 +52,11 @@ namespace YooAsset
|
||||
/// </summary>
|
||||
public IDownloadUrlPolicy DownloadUrlPolicy { get; }
|
||||
|
||||
public Configuration(int watchdogTimeout, bool disableUnityWebCache,
|
||||
public Configuration(bool disableUnityWebCache,
|
||||
EFileVerifyLevel downloadVerifyLevel, IBundleDecryptor assetBundleDecryptor, IBundleDecryptor rawBundleDecryptor,
|
||||
IWebPlatformStrategy platformStrategy, IRemoteService remoteService, IDownloadBackend downloadBackend,
|
||||
IDownloadRetryPolicy downloadRetryPolicy, IDownloadUrlPolicy downloadUrlPolicy)
|
||||
{
|
||||
WatchdogTimeout = watchdogTimeout;
|
||||
DisableUnityWebCache = disableUnityWebCache;
|
||||
DownloadVerifyLevel = downloadVerifyLevel;
|
||||
AssetBundleDecryptor = assetBundleDecryptor;
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
using System;
|
||||
using UnityEngine;
|
||||
|
||||
namespace YooAsset
|
||||
{
|
||||
@@ -40,11 +39,6 @@ namespace YooAsset
|
||||
/// </summary>
|
||||
public bool DisableUnityWebCache { get; private set; } = false;
|
||||
|
||||
/// <summary>
|
||||
/// 自定义参数:下载任务的看门狗机制超时时间
|
||||
/// </summary>
|
||||
public int DownloadWatchdogTimeout { get; private set; } = 0;
|
||||
|
||||
/// <summary>
|
||||
/// 自定义参数:下载的资源包数据的校验级别
|
||||
/// </summary>
|
||||
@@ -145,8 +139,8 @@ namespace YooAsset
|
||||
}
|
||||
else if (paramName == nameof(EFileSystemParameter.DownloadWatchdogTimeout))
|
||||
{
|
||||
int convertValue = FileSystemHelper.CastParameter<int>(paramName, value);
|
||||
DownloadWatchdogTimeout = Mathf.Max(convertValue, 0);
|
||||
// 小游戏平台的 UnityWebRequest 可能无法返回可靠的下载字节数,因此不支持看门狗机制。
|
||||
YooLogger.LogError($"{nameof(EFileSystemParameter.DownloadWatchdogTimeout)} is not supported by {nameof(WebNetworkFileSystem)}.");
|
||||
}
|
||||
else if (paramName == nameof(EFileSystemParameter.FileVerifyLevel))
|
||||
{
|
||||
@@ -208,7 +202,6 @@ namespace YooAsset
|
||||
|
||||
// 创建文件缓存系统
|
||||
var cacheConfig = new WebNetworkBundleCache.Configuration(
|
||||
watchdogTimeout: DownloadWatchdogTimeout,
|
||||
disableUnityWebCache: DisableUnityWebCache,
|
||||
downloadVerifyLevel: DownloadVerifyLevel,
|
||||
assetBundleDecryptor: AssetBundleDecryptor,
|
||||
|
||||
Reference in New Issue
Block a user