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