using AlicizaX; using Cysharp.Threading.Tasks; using UnityEngine; using YooAsset; namespace Unity.Startup.Procedure { internal sealed class ProcedureClearCache : StateBase { protected override void OnEnter() { Log.Info("开始清理包裹无用缓存!"); ClearCacheFilesOperation operation = GameApp.Resource.ClearCacheFilesAsync(EFileClearMode.ClearUnusedBundleFiles); operation.Completed += ClearCacheCompleted; } private void ClearCacheCompleted(AsyncOperationBase obj) { Log.Info($"清理包裹缓存完成"); SimulateProgress().Forget(); } private async UniTask SimulateProgress() { await LauncherUIHandler.StartProgressCoroutine(3f).ToUniTask(); Log.Info("模拟加载进度完毕"); SwitchState(UpdateProcedureState.ProcedureLoadAssembly); } } }