From 764db1059f0cfe0b200778630ca917aa56386c3b Mon Sep 17 00:00:00 2001 From: shenjianxing <”315615051@qq.com“> Date: Mon, 23 Dec 2024 13:43:20 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=89=93=E5=8C=85=E5=90=8EDa?= =?UTF-8?q?ta=E6=96=87=E4=BB=B6=E8=87=AA=E5=8A=A8=E5=A4=8D=E5=88=B6?= =?UTF-8?q?=E5=88=B0=E8=BE=93=E5=87=BA=E7=9B=AE=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Scripts/Actions/LedAction.cs | 1 - Assets/Scripts/Editor/VirtualFPostProcess.cs | 62 +++++++++++++++++++ .../Editor/VirtualFPostProcess.cs.meta | 11 ++++ 3 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 Assets/Scripts/Editor/VirtualFPostProcess.cs create mode 100644 Assets/Scripts/Editor/VirtualFPostProcess.cs.meta diff --git a/Assets/Scripts/Actions/LedAction.cs b/Assets/Scripts/Actions/LedAction.cs index 93b8112a..2b4d020a 100644 --- a/Assets/Scripts/Actions/LedAction.cs +++ b/Assets/Scripts/Actions/LedAction.cs @@ -1,6 +1,5 @@ using System; using UnityEngine; -using static UnityEditor.Progress; namespace QFramework { diff --git a/Assets/Scripts/Editor/VirtualFPostProcess.cs b/Assets/Scripts/Editor/VirtualFPostProcess.cs new file mode 100644 index 00000000..23a2265c --- /dev/null +++ b/Assets/Scripts/Editor/VirtualFPostProcess.cs @@ -0,0 +1,62 @@ +using System.Collections; +using System.Collections.Generic; +using System.IO; +using UnityEditor.Build; +using UnityEditor.Build.Reporting; +using UnityEngine; + +public class VirtualFPostProcess : IPostprocessBuildWithReport +{ + // صȼԽԽִУ + public int callbackOrder => 0; + + // ڴɺִ + public void OnPostprocessBuild(BuildReport report) + { + // ȡĿĿ¼· + string projectPath = Application.dataPath; + + // ȡDataļе· + string dataFolderPath = Path.Combine(projectPath, "../Data"); + + // ȡĿ¼ + string buildOutputPath = report.summary.outputPath; + + // DataļǷ + if (Directory.Exists(dataFolderPath)) + { + // DataļиƵĿĿ¼ + string targetDataPath = Path.Combine(buildOutputPath, "Data"); + CopyDirectory(dataFolderPath, targetDataPath); + Debug.Log($"Data folder copied to build output directory: {targetDataPath}"); + } + else + { + Debug.LogWarning("Data folder not found at: " + dataFolderPath); + } + } + + // ݹ鸴ļеĸļļ + private void CopyDirectory(string sourceDir, string destinationDir) + { + // ȷĿĿ¼ + if (!Directory.Exists(destinationDir)) + { + Directory.CreateDirectory(destinationDir); + } + + // ԴĿ¼еļ + foreach (string file in Directory.GetFiles(sourceDir)) + { + string destFile = Path.Combine(destinationDir, Path.GetFileName(file)); + File.Copy(file, destFile, true); // ļ + } + + // ԴĿ¼еļ + foreach (string subDir in Directory.GetDirectories(sourceDir)) + { + string destSubDir = Path.Combine(destinationDir, Path.GetFileName(subDir)); + CopyDirectory(subDir, destSubDir); // ݹ鸴ļ + } + } +} diff --git a/Assets/Scripts/Editor/VirtualFPostProcess.cs.meta b/Assets/Scripts/Editor/VirtualFPostProcess.cs.meta new file mode 100644 index 00000000..814b0e1c --- /dev/null +++ b/Assets/Scripts/Editor/VirtualFPostProcess.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5f59102734fe9cb4f841df4c5037930c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: