diff --git a/Assets/YooAsset/Runtime/FileSystem/Operation/Internal/DownloadWebNormalAssetBundleOperation.cs b/Assets/YooAsset/Runtime/FileSystem/Operation/Internal/DownloadWebNormalAssetBundleOperation.cs index b58bbca9..93da0279 100644 --- a/Assets/YooAsset/Runtime/FileSystem/Operation/Internal/DownloadWebNormalAssetBundleOperation.cs +++ b/Assets/YooAsset/Runtime/FileSystem/Operation/Internal/DownloadWebNormalAssetBundleOperation.cs @@ -122,7 +122,7 @@ namespace YooAsset { if (_disableUnityWebCache) { - var downloadhandler = new DownloadHandlerAssetBundle(_requestURL, 0); + var downloadhandler = new DownloadHandlerAssetBundle(_requestURL, Bundle.UnityCRC); #if UNITY_2020_3_OR_NEWER downloadhandler.autoLoadAssetBundle = false; #endif @@ -132,13 +132,24 @@ namespace YooAsset { // 注意:优先从浏览器缓存里获取文件 // The file hash defining the version of the asset bundle. - uint unityCRC = Bundle.UnityCRC; Hash128 fileHash = Hash128.Parse(Bundle.FileHash); - var downloadhandler = new DownloadHandlerAssetBundle(_requestURL, fileHash, unityCRC); + var cachedBundle = new CachedAssetBundle(Bundle.BundleName, fileHash); + if (Caching.IsVersionCached(cachedBundle)) + { + var downloadhandler = new DownloadHandlerAssetBundle(_requestURL, cachedBundle, 0); #if UNITY_2020_3_OR_NEWER - downloadhandler.autoLoadAssetBundle = false; + downloadhandler.autoLoadAssetBundle = false; #endif - return downloadhandler; + return downloadhandler; + } + else + { + var downloadhandler = new DownloadHandlerAssetBundle(_requestURL, cachedBundle, Bundle.UnityCRC); +#if UNITY_2020_3_OR_NEWER + downloadhandler.autoLoadAssetBundle = false; +#endif + return downloadhandler; + } } } }