From 1b0288fcd077ae4386480cf27f0bee34c56f2de1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=95=E5=86=A0=E5=B3=B0?= Date: Mon, 30 Jun 2025 16:19:59 +0800 Subject: [PATCH] update mini game MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 微信小游戏和抖音小游戏支持资源清单加密。 --- .../internal/LoadTiktokPackageManifestOperation.cs | 2 +- .../Runtime/TiktokFileSystem/TiktokFileSystem.cs | 9 +++++++++ .../internal/LoadWechatPackageManifestOperation.cs | 2 +- .../Runtime/WechatFileSystem/WechatFileSystem.cs | 9 +++++++++ 4 files changed, 20 insertions(+), 2 deletions(-) diff --git a/Assets/YooAsset/Samples~/Mini Game/Runtime/TiktokFileSystem/Operation/internal/LoadTiktokPackageManifestOperation.cs b/Assets/YooAsset/Samples~/Mini Game/Runtime/TiktokFileSystem/Operation/internal/LoadTiktokPackageManifestOperation.cs index 5479c2d1..1c5a14a3 100644 --- a/Assets/YooAsset/Samples~/Mini Game/Runtime/TiktokFileSystem/Operation/internal/LoadTiktokPackageManifestOperation.cs +++ b/Assets/YooAsset/Samples~/Mini Game/Runtime/TiktokFileSystem/Operation/internal/LoadTiktokPackageManifestOperation.cs @@ -92,7 +92,7 @@ internal class LoadTiktokPackageManifestOperation : AsyncOperationBase { if (_deserializer == null) { - _deserializer = new DeserializeManifestOperation(_webDataRequestOp.Result); + _deserializer = new DeserializeManifestOperation(_fileSystem.ManifestServices, _webDataRequestOp.Result); _deserializer.StartOperation(); AddChildOperation(_deserializer); } diff --git a/Assets/YooAsset/Samples~/Mini Game/Runtime/TiktokFileSystem/TiktokFileSystem.cs b/Assets/YooAsset/Samples~/Mini Game/Runtime/TiktokFileSystem/TiktokFileSystem.cs index acac99bb..f7835376 100644 --- a/Assets/YooAsset/Samples~/Mini Game/Runtime/TiktokFileSystem/TiktokFileSystem.cs +++ b/Assets/YooAsset/Samples~/Mini Game/Runtime/TiktokFileSystem/TiktokFileSystem.cs @@ -103,6 +103,11 @@ internal class TiktokFileSystem : IFileSystem /// 自定义参数:解密方法类 /// public IWebDecryptionServices DecryptionServices { private set; get; } + + /// + /// 自定义参数:资源清单服务类 + /// + public IManifestServices ManifestServices { private set; get; } #endregion @@ -161,6 +166,10 @@ internal class TiktokFileSystem : IFileSystem { DecryptionServices = (IWebDecryptionServices)value; } + else if (name == FileSystemParametersDefine.MANIFEST_SERVICES) + { + ManifestServices = (IManifestServices)value; + } else { YooLogger.Warning($"Invalid parameter : {name}"); diff --git a/Assets/YooAsset/Samples~/Mini Game/Runtime/WechatFileSystem/Operation/internal/LoadWechatPackageManifestOperation.cs b/Assets/YooAsset/Samples~/Mini Game/Runtime/WechatFileSystem/Operation/internal/LoadWechatPackageManifestOperation.cs index ba387227..c18e1b4c 100644 --- a/Assets/YooAsset/Samples~/Mini Game/Runtime/WechatFileSystem/Operation/internal/LoadWechatPackageManifestOperation.cs +++ b/Assets/YooAsset/Samples~/Mini Game/Runtime/WechatFileSystem/Operation/internal/LoadWechatPackageManifestOperation.cs @@ -92,7 +92,7 @@ internal class LoadWechatPackageManifestOperation : AsyncOperationBase { if (_deserializer == null) { - _deserializer = new DeserializeManifestOperation(_webDataRequestOp.Result); + _deserializer = new DeserializeManifestOperation(_fileSystem.ManifestServices, _webDataRequestOp.Result); _deserializer.StartOperation(); AddChildOperation(_deserializer); } diff --git a/Assets/YooAsset/Samples~/Mini Game/Runtime/WechatFileSystem/WechatFileSystem.cs b/Assets/YooAsset/Samples~/Mini Game/Runtime/WechatFileSystem/WechatFileSystem.cs index 7fb58d6d..fdc75684 100644 --- a/Assets/YooAsset/Samples~/Mini Game/Runtime/WechatFileSystem/WechatFileSystem.cs +++ b/Assets/YooAsset/Samples~/Mini Game/Runtime/WechatFileSystem/WechatFileSystem.cs @@ -104,6 +104,11 @@ internal class WechatFileSystem : IFileSystem /// 自定义参数:解密方法类 /// public IWebDecryptionServices DecryptionServices { private set; get; } + + /// + /// 自定义参数:资源清单服务类 + /// + public IManifestServices ManifestServices { private set; get; } #endregion @@ -176,6 +181,10 @@ internal class WechatFileSystem : IFileSystem { DecryptionServices = (IWebDecryptionServices)value; } + else if (name == FileSystemParametersDefine.MANIFEST_SERVICES) + { + ManifestServices = (IManifestServices)value; + } else { YooLogger.Warning($"Invalid parameter : {name}");