11
All checks were successful
Plugin Library CI / publish (00.BuildOriginality) (push) Successful in 3s
Plugin Library CI / publish (00.StaryEvo) (push) Successful in 4s
Plugin Library CI / publish (00.StaryEvoTools) (push) Successful in 19s
Plugin Library CI / publish (01.HybridCLR) (push) Successful in 5s
Plugin Library CI / publish (02.InformationSave) (push) Successful in 3s
Plugin Library CI / publish (03.YooAsset) (push) Successful in 33s
Plugin Library CI / publish (04.AudioCore) (push) Successful in 3s
Plugin Library CI / publish (05.TableTextConversion) (push) Successful in 4s
Plugin Library CI / publish (06.UIFarme) (push) Successful in 16s
Plugin Library CI / publish (07.RKTools) (push) Successful in 3s
Plugin Library CI / publish (08.UniTask) (push) Successful in 3s
Plugin Library CI / publish (09.CodeChecker) (push) Successful in 16s
Plugin Library CI / publish (10.StoryEditor) (push) Successful in 2s
Plugin Library CI / publish (10.XNode) (push) Successful in 2s
Plugin Library CI / publish (11.PointCloudTools) (push) Successful in 2s

This commit is contained in:
2026-04-17 14:42:49 +08:00
parent 7eec0f9f91
commit b45348d0fa
3 changed files with 35 additions and 7 deletions

View File

@@ -1,5 +1,6 @@
using System;
using System.IO;
using System.Linq;
using Cysharp.Threading.Tasks;
using Main;
using Newtonsoft.Json;
@@ -114,7 +115,7 @@ namespace Stary.Evo
private async UniTask<bool> HOST_PLAYMODE(ResourcePackage package)
{
#if WEB_NORMAL
var initParams = YooAssetFileSystem.WebInitializeParameter(package.PackageName);
var initParams = YooAssetFileSystem.WebInitializeParameter(package.PackageName);
#else
var initParams = YooAssetFileSystem.HostInitializeParameter(package.PackageName);
#endif
@@ -128,6 +129,11 @@ namespace Stary.Evo
if (initOperation.Status == EOperationStatus.Succeed)
{
Debug.Log("UnityEvo:从远程加载资源包,初始化成功!");
#if WEB_NORMAL
string extractPath = Path.Combine(Application.persistentDataPath, "DownloadedContent",package.PackageName);
await CreateResourceImporter(package, extractPath);
#endif
return true;
}
else
@@ -438,5 +444,26 @@ namespace Stary.Evo
}
#endregion
#region
private async UniTask CreateResourceImporter(ResourcePackage package, string extractPath)
{
// 2. 使用 ResourceImporter 导入解压的文件到缓存系统
string[] files = Directory.GetFiles(extractPath, "*", SearchOption.AllDirectories)
.Where(f => !f.EndsWith(".meta"))
.ToArray();
var importerOp = package.CreateResourceImporter(files, 10, 3);
await importerOp;
if (importerOp.Status == EOperationStatus.Succeed)
{
// 导入成功,现在资源在 YooAsset 缓存中,可以通过正常方式加载
Debug.Log($"成功导入 {files.Length} 个文件");
}
}
#endregion
}
}

View File

@@ -29,13 +29,14 @@ namespace Stary.Evo
public static InitializeParameters WebInitializeParameter(string packageName)
{
var cacheFileSystemParams = FileSystemParameters.CreateDefaultBuildinFileSystemParameters(null,
$"{Application.persistentDataPath}/DownloadedContent/{packageName}");
cacheFileSystemParams.AddParameter(FileSystemParametersDefine.APPEND_FILE_EXTENSION, true);
cacheFileSystemParams.AddParameter(FileSystemParametersDefine.COPY_BUILDIN_PACKAGE_MANIFEST, true);
var webServerFileSystemParams = FileSystemParameters.CreateDefaultWebServerFileSystemParameters();
// var cacheFileSystemParams = FileSystemParameters.CreateDefaultBuildinFileSystemParameters(null,
// $"{Application.persistentDataPath}/DownloadedContent/{packageName}");
webServerFileSystemParams.AddParameter(FileSystemParametersDefine.APPEND_FILE_EXTENSION, true);
webServerFileSystemParams.AddParameter(FileSystemParametersDefine.COPY_BUILDIN_PACKAGE_MANIFEST, true);
var initParameters = new WebPlayModeParameters();
initParameters.WebServerFileSystemParameters = cacheFileSystemParams;
initParameters.WebServerFileSystemParameters = webServerFileSystemParams;
return initParameters;
}
public static InitializeParameters EditorSimulateInitializeParameter(string packageName)

View File

@@ -1,6 +1,6 @@
{
"name": "com.staryevo.tools",
"version": "1.4.9",
"version": "1.4.10",
"displayName": "00.StaryEvo.Tools",
"description": "This is an Framework package(后台服务器版本端口9527)",
"unity": "2021.3",