diff --git a/Assets/YooAsset/Runtime/YooAssets.cs b/Assets/YooAsset/Runtime/YooAssets.cs index b6462666..833617cf 100644 --- a/Assets/YooAsset/Runtime/YooAssets.cs +++ b/Assets/YooAsset/Runtime/YooAssets.cs @@ -75,7 +75,14 @@ namespace YooAsset if (_driver != null) GameObject.Destroy(_driver); - OnApplicationQuit(true); + // 终止并清空所有包裹的异步操作 + ClearAllPackageOperation(); + + // 卸载所有AssetBundle + AssetBundle.UnloadAllAssetBundles(true); + + // 清空资源包裹列表 + _packages.Clear(); } } @@ -91,25 +98,15 @@ namespace YooAsset } /// - /// 应用程序退出处理 + /// 终止并清空所有包裹的异步操作 /// - internal static void OnApplicationQuit(bool unloadAllAssetBundles) + internal static void ClearAllPackageOperation() { - // 说明:在编辑器下确保播放被停止时IO类操作被终止。 foreach (var package in _packages) { OperationSystem.ClearPackageOperation(package.PackageName); } OperationSystem.DestroyAll(); - - // 清空资源包裹列表 - _packages.Clear(); - - // 卸载所有AssetBundle - if (unloadAllAssetBundles) - { - AssetBundle.UnloadAllAssetBundles(true); - } } /// diff --git a/Assets/YooAsset/Runtime/YooAssetsDriver.cs b/Assets/YooAsset/Runtime/YooAssetsDriver.cs index a1ae075e..4adb4e40 100644 --- a/Assets/YooAsset/Runtime/YooAssetsDriver.cs +++ b/Assets/YooAsset/Runtime/YooAssetsDriver.cs @@ -24,7 +24,8 @@ namespace YooAsset #if UNITY_EDITOR void OnApplicationQuit() { - YooAssets.OnApplicationQuit(false); + // 说明:在编辑器下确保播放被停止时IO类操作被终止。 + YooAssets.ClearAllPackageOperation(); } #endif