Update RawFileOperation.cs

优化原生文件加载逻辑
pull/15/head
hevinci 2022-06-21 14:08:02 +08:00
parent 43248408fc
commit c0099cb90c
1 changed files with 30 additions and 4 deletions

View File

@ -203,6 +203,9 @@ namespace YooAsset
} }
else if (_bundleInfo.LoadMode == BundleInfo.ELoadMode.LoadFromStreaming) else if (_bundleInfo.LoadMode == BundleInfo.ELoadMode.LoadFromStreaming)
{ {
if (DownloadSystem.ContainsVerifyFile(_bundleInfo.Hash))
_steps = ESteps.CheckAndCopyFile;
else
_steps = ESteps.DownloadFromApk; _steps = ESteps.DownloadFromApk;
} }
else else
@ -235,8 +238,18 @@ namespace YooAsset
} }
else else
{ {
if (DownloadSystem.CheckContentIntegrity(GetCachePath(), _bundleInfo.SizeBytes, _bundleInfo.CRC))
{
DownloadSystem.CacheVerifyFile(_bundleInfo.Hash, _bundleInfo.BundleName);
_steps = ESteps.CheckAndCopyFile; _steps = ESteps.CheckAndCopyFile;
} }
else
{
_steps = ESteps.Done;
Status = EOperationStatus.Failed;
Error = "File content verify failed !";
}
}
_fileRequester.Dispose(); _fileRequester.Dispose();
} }
@ -342,6 +355,9 @@ namespace YooAsset
} }
else if (_bundleInfo.LoadMode == BundleInfo.ELoadMode.LoadFromStreaming) else if (_bundleInfo.LoadMode == BundleInfo.ELoadMode.LoadFromStreaming)
{ {
if (DownloadSystem.ContainsVerifyFile(_bundleInfo.Hash))
_steps = ESteps.CheckAndCopyFile;
else
_steps = ESteps.DownloadFromApk; _steps = ESteps.DownloadFromApk;
} }
else if (_bundleInfo.LoadMode == BundleInfo.ELoadMode.LoadFromCache) else if (_bundleInfo.LoadMode == BundleInfo.ELoadMode.LoadFromCache)
@ -405,8 +421,18 @@ namespace YooAsset
} }
else else
{ {
if (DownloadSystem.CheckContentIntegrity(GetCachePath(), _bundleInfo.SizeBytes, _bundleInfo.CRC))
{
DownloadSystem.CacheVerifyFile(_bundleInfo.Hash, _bundleInfo.BundleName);
_steps = ESteps.CheckAndCopyFile; _steps = ESteps.CheckAndCopyFile;
} }
else
{
_steps = ESteps.Done;
Status = EOperationStatus.Failed;
Error = "File content verify failed !";
}
}
_fileRequester.Dispose(); _fileRequester.Dispose();
} }