From 5c750e9c0280530ca8a3d7be01e229029a1df569 Mon Sep 17 00:00:00 2001 From: Rorschach Date: Thu, 28 Sep 2023 20:18:22 +0800 Subject: [PATCH] =?UTF-8?q?[fix]=20PS5=E6=9E=84=E5=BB=BAPackage=E5=8C=85?= =?UTF-8?q?=E6=97=B6=EF=BC=8C=E5=9C=A8IUnityLinkerProcessor.GenerateAdditi?= =?UTF-8?q?onalLinkXmlFile=E5=A4=84=E7=90=86=20ScriptingAssemblies.json=20?= =?UTF-8?q?(#36)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PatchScriptingAssemblyList.cs | 22 ++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/Editor/BuildProcessors/PatchScriptingAssemblyList.cs b/Editor/BuildProcessors/PatchScriptingAssemblyList.cs index d30d80d..ee21b9b 100644 --- a/Editor/BuildProcessors/PatchScriptingAssemblyList.cs +++ b/Editor/BuildProcessors/PatchScriptingAssemblyList.cs @@ -20,8 +20,13 @@ namespace HybridCLR.Editor.BuildProcessors #endif IPostprocessBuildWithReport #if !UNITY_2021_1_OR_NEWER && UNITY_WEBGL - , IIl2CppProcessor + , IIl2CppProcessor #endif + +#if UNITY_PS5 + , IUnityLinkerProcessor +#endif + { public int callbackOrder => 0; @@ -45,11 +50,22 @@ namespace HybridCLR.Editor.BuildProcessors // 如果target为Android,由于已经在OnPostGenerateGradelAndroidProject中处理过, // 这里不再重复处理 #if !UNITY_ANDROID && !UNITY_WEBGL - PathScriptingAssembilesFile(report.summary.outputPath); #endif } +#if UNITY_PS5 + /// + /// 打包模式如果是 Package 需要在这个阶段提前处理 .json , PC Hosted 和 GP5 模式不受影响 + /// + + public string GenerateAdditionalLinkXmlFile(UnityEditor.Build.Reporting.BuildReport report, UnityEditor.UnityLinker.UnityLinkerBuildPipelineData data) + { + string path = $"{SettingsUtil.ProjectDir}/Library/PlayerDataCache/PS5/Data"; + PathScriptingAssembilesFile(path); + return null; + } +#endif public void PathScriptingAssembilesFile(string path) { if (!SettingsUtil.Enable) @@ -78,7 +94,7 @@ namespace HybridCLR.Editor.BuildProcessors if (jsonFiles.Length == 0) { - //Debug.LogError($"can not find file {SettingsUtil.ScriptingAssembliesJsonFile}"); + Debug.LogWarning($"can not find file {SettingsUtil.ScriptingAssembliesJsonFile}"); return; }