diff --git a/Editor/Constant/FrameworkAssetInitlized.cs b/Editor/Constant/FrameworkAssetInitlized.cs deleted file mode 100644 index 2270b1f..0000000 --- a/Editor/Constant/FrameworkAssetInitlized.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.IO; -using AlicizaX.Runtime; -using UnityEditor; -using UnityEngine; - -namespace AlicizaX.Editor -{ - static class FrameworkAssetInitlized - { - [InitializeOnLoadMethod] - static void Initlize() - { - string FloderPath = "Assets/Resources/"; - if (!Directory.Exists(FloderPath)) - { - Directory.CreateDirectory(FloderPath); - } - - string publisherPath = Path.Combine(FloderPath, "FrameworkPublishSettings.asset"); - string hotPath = Path.Combine(FloderPath, "FrameworkHotUpdateSettings.asset"); - if (!File.Exists(publisherPath)) - { - var publisherObject = ScriptableObject.CreateInstance(); - AssetDatabase.CreateAsset(publisherObject, publisherPath); - } - - if (!File.Exists(hotPath)) - { - var hotObject = ScriptableObject.CreateInstance(); - AssetDatabase.CreateAsset(hotObject, hotPath); - } - - AssetDatabase.Refresh(); - } - } -} diff --git a/Editor/Constant/FrameworkAssetInitlized.cs.meta b/Editor/Constant/FrameworkAssetInitlized.cs.meta deleted file mode 100644 index 7b502d4..0000000 --- a/Editor/Constant/FrameworkAssetInitlized.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 9e6620d843d745fba3213017d052d5e1 -timeCreated: 1739170824 \ No newline at end of file diff --git a/Editor/EditorWindow/GameFrameworkPreferenceWindow.cs b/Editor/EditorWindow/GameFrameworkPreferenceWindow.cs index 4a0d651..1ccb997 100644 --- a/Editor/EditorWindow/GameFrameworkPreferenceWindow.cs +++ b/Editor/EditorWindow/GameFrameworkPreferenceWindow.cs @@ -1,97 +1,97 @@ -using UnityEditor; -using UnityEngine; -using System; -using System.Linq; -using System.Reflection; -using System.Collections.Generic; -using AlicizaX.Runtime; -using Sirenix.OdinInspector.Editor; - -namespace AlicizaX.Editor -{ - public class GameFrameworkPreferenceWindow : OdinMenuEditorWindow - { - private List m_TabTypes; - private readonly Dictionary _tabBases = new(); - - [MenuItem("Tools/AlicizaX/Preference Window")] - public static void ShowWindow() - { - GetWindow(true, "Preference Window"); - } - - protected override void OnEnable() - { - base.OnEnable(); - this.position = new Rect(this.position.x, this.position.y, 800, 600); - - var assemblies = Utility.Assembly.GetAssemblies(); - - m_TabTypes = new List(); - - foreach (var assembly in assemblies) - { - var types = assembly.GetTypes(); - foreach (var type in types) - { - if (typeof(GameFrameworkTabBase).IsAssignableFrom(type) && type.IsClass && !type.IsAbstract) - { - var displayNameAttr = (DisplayNameAttribute)Attribute.GetCustomAttribute(type, typeof(DisplayNameAttribute)); - if (displayNameAttr != null) - { - m_TabTypes.Add(type); - } - } - } - } - - m_TabTypes = m_TabTypes.OrderBy(t => ((DisplayNameAttribute)Attribute.GetCustomAttribute(t, typeof(DisplayNameAttribute))).DisplayName).ToList(); - } - - - protected override void OnDestroy() - { - base.OnDestroy(); - if (this.MenuTree != null && this.MenuTree.Selection.SelectedValue != null) - { - var selectTarget = this.MenuTree.Selection.SelectedValue; - if (selectTarget != null) - { - var selectType = selectTarget.GetType(); - if (_tabBases.TryGetValue(selectType, out GameFrameworkTabBase tab)) - { - tab.Save(); - } - } - } - } - - protected override OdinMenuTree BuildMenuTree() - { - var tree = new OdinMenuTree(); - foreach (var tabType in m_TabTypes) - { - DisplayNameAttribute displayNameAttribute = (DisplayNameAttribute)Attribute.GetCustomAttribute(tabType, typeof(DisplayNameAttribute)); - GameFrameworkTabBase instance = (GameFrameworkTabBase)Activator.CreateInstance(tabType); - _tabBases.Add(tabType, instance); - tree.Add(displayNameAttribute.DisplayName, instance); - } - - tree.Selection.SelectionChanged += SelectionOnSelectionChanged; - return tree; - } - - private void SelectionOnSelectionChanged(SelectionChangedType obj) - { - var selectTarget = this.MenuTree.Selection.SelectedValue; - if (selectTarget != null) - { - var selectType = selectTarget.GetType(); - if (_tabBases.TryGetValue(selectType, out GameFrameworkTabBase tab)) - { - tab.Save(); - } - } - } - } -} +// using UnityEditor; +// using UnityEngine; +// using System; +// using System.Linq; +// using System.Reflection; +// using System.Collections.Generic; +// using AlicizaX.Runtime; +// using Sirenix.OdinInspector.Editor; +// +// namespace AlicizaX.Editor +// { +// public class GameFrameworkPreferenceWindow : OdinMenuEditorWindow +// { +// private List m_TabTypes; +// private readonly Dictionary _tabBases = new(); +// +// [MenuItem("Tools/AlicizaX/Preference Window")] +// public static void ShowWindow() +// { +// GetWindow(true, "Preference Window"); +// } +// +// protected override void OnEnable() +// { +// base.OnEnable(); +// this.position = new Rect(this.position.x, this.position.y, 800, 600); +// +// var assemblies = Utility.Assembly.GetAssemblies(); +// +// m_TabTypes = new List(); +// +// foreach (var assembly in assemblies) +// { +// var types = assembly.GetTypes(); +// foreach (var type in types) +// { +// if (typeof(GameFrameworkTabBase).IsAssignableFrom(type) && type.IsClass && !type.IsAbstract) +// { +// var displayNameAttr = (DisplayNameAttribute)Attribute.GetCustomAttribute(type, typeof(DisplayNameAttribute)); +// if (displayNameAttr != null) +// { +// m_TabTypes.Add(type); +// } +// } +// } +// } +// +// m_TabTypes = m_TabTypes.OrderBy(t => ((DisplayNameAttribute)Attribute.GetCustomAttribute(t, typeof(DisplayNameAttribute))).DisplayName).ToList(); +// } +// +// +// protected override void OnDestroy() +// { +// base.OnDestroy(); +// if (this.MenuTree != null && this.MenuTree.Selection.SelectedValue != null) +// { +// var selectTarget = this.MenuTree.Selection.SelectedValue; +// if (selectTarget != null) +// { +// var selectType = selectTarget.GetType(); +// if (_tabBases.TryGetValue(selectType, out GameFrameworkTabBase tab)) +// { +// tab.Save(); +// } +// } +// } +// } +// +// protected override OdinMenuTree BuildMenuTree() +// { +// var tree = new OdinMenuTree(); +// foreach (var tabType in m_TabTypes) +// { +// DisplayNameAttribute displayNameAttribute = (DisplayNameAttribute)Attribute.GetCustomAttribute(tabType, typeof(DisplayNameAttribute)); +// GameFrameworkTabBase instance = (GameFrameworkTabBase)Activator.CreateInstance(tabType); +// _tabBases.Add(tabType, instance); +// tree.Add(displayNameAttribute.DisplayName, instance); +// } +// +// tree.Selection.SelectionChanged += SelectionOnSelectionChanged; +// return tree; +// } +// +// private void SelectionOnSelectionChanged(SelectionChangedType obj) +// { +// var selectTarget = this.MenuTree.Selection.SelectedValue; +// if (selectTarget != null) +// { +// var selectType = selectTarget.GetType(); +// if (_tabBases.TryGetValue(selectType, out GameFrameworkTabBase tab)) +// { +// tab.Save(); +// } +// } +// } +// } +// } diff --git a/Editor/HybridCLR/BuildDLLCommand.cs b/Editor/HybridCLR/BuildDLLCommand.cs index 9bde1b0..dd3a71a 100644 --- a/Editor/HybridCLR/BuildDLLCommand.cs +++ b/Editor/HybridCLR/BuildDLLCommand.cs @@ -10,6 +10,7 @@ using UnityEngine; public static class BuildDLLCommand { private const string EnableHybridClrScriptingDefineSymbol = "ENABLE_HYBRIDCLR"; + public const string AssemblyTextAssetPath = "Bundles/DLL"; static BuildDLLCommand() { @@ -18,7 +19,7 @@ public static class BuildDLLCommand /// /// 禁用HybridCLR宏定义。 /// - [MenuItem("Tools/AlicizaX/HybridCLR/Define Symbols/Disable HybridCLR", false, 30)] + [MenuItem("HybridCLR/Tools/Define Symbols/Disable HybridCLR", false, 30)] public static void Disable() { ScriptingDefineSymbols.RemoveScriptingDefineSymbol(EnableHybridClrScriptingDefineSymbol); @@ -29,7 +30,7 @@ public static class BuildDLLCommand /// /// 开启HybridCLR宏定义。 /// - [MenuItem("Tools/AlicizaX/HybridCLR/Define Symbols/Enable HybridCLR", false, 31)] + [MenuItem("HybridCLR/Tools/Tools/Define Symbols/Enable HybridCLR", false, 31)] public static void Enable() { ScriptingDefineSymbols.RemoveScriptingDefineSymbol(EnableHybridClrScriptingDefineSymbol); @@ -39,10 +40,9 @@ public static class BuildDLLCommand } #if ENABLE_HYBRIDCLR - [MenuItem("Tools/AlicizaX/HybridCLR/Build/BuildAssets And CopyTo AssemblyTextAssetPath")] + [MenuItem("HybridCLR/Tools/Build/BuildAssets And CopyTo AssemblyTextAssetPath")] public static void BuildAndCopyDlls() { - BuildTarget target = EditorUserBuildSettings.activeBuildTarget; CompileDllCommand.CompileDll(target); CopyAOTHotUpdateDlls(target); @@ -69,14 +69,15 @@ public static class BuildDLLCommand #if ENABLE_HYBRIDCLR var target = EditorUserBuildSettings.activeBuildTarget; string aotAssembliesSrcDir = SettingsUtil.GetAssembliesPostIl2CppStripDir(target); - string aotAssembliesDstDir = Application.dataPath + "/" + ScriptableSingletonUtil.Get().AssemblyTextAssetPath; + string aotAssembliesDstDir = Application.dataPath + "/" + AssemblyTextAssetPath; - foreach (var dll in ScriptableSingletonUtil.Get().AOTMetaAssemblies) + foreach (var dll in AssemblyLoadData.Instance.AOTMetaAssemblies) { string srcDllPath = $"{aotAssembliesSrcDir}/{dll}"; if (!System.IO.File.Exists(srcDllPath)) { - Debug.LogError($"ab中添加AOT补充元数据dll:{srcDllPath} 时发生错误,文件不存在。裁剪后的AOT dll在BuildPlayer时才能生成,因此需要你先构建一次游戏App后再打包。"); + Debug.LogError( + $"ab中添加AOT补充元数据dll:{srcDllPath} 时发生错误,文件不存在。裁剪后的AOT dll在BuildPlayer时才能生成,因此需要你先构建一次游戏App后再打包。"); continue; } @@ -93,7 +94,7 @@ public static class BuildDLLCommand var target = EditorUserBuildSettings.activeBuildTarget; string hotfixDllSrcDir = SettingsUtil.GetHotUpdateDllsOutputDirByTarget(target); - string hotfixAssembliesDstDir = Application.dataPath + "/" + ScriptableSingletonUtil.Get().AssemblyTextAssetPath; + string hotfixAssembliesDstDir = Application.dataPath + "/" + AssemblyTextAssetPath; foreach (var dll in SettingsUtil.HotUpdateAssemblyFilesExcludePreserved) { string dllPath = $"{hotfixDllSrcDir}/{dll}"; diff --git a/Editor/HybridCLR/HybridCLRSettingTab.cs b/Editor/HybridCLR/HybridCLRSettingTab.cs deleted file mode 100644 index 69bff7e..0000000 --- a/Editor/HybridCLR/HybridCLRSettingTab.cs +++ /dev/null @@ -1,37 +0,0 @@ -using System; -using System.Collections.Generic; -using AlicizaX.Editor; -using Sirenix.OdinInspector; -using Sirenix.OdinInspector.Editor; -using Sirenix.Serialization; -using UnityEditor; -using UnityEngine; - -namespace AlicizaX.Runtime -{ - [DisplayName("热更设置")] - [Serializable] - internal sealed class HybridCLRSettingTab : GameFrameworkTabBase - { - [Required][InlineEditor(InlineEditorObjectFieldModes.CompletelyHidden)][DisableInPlayMode] [HideLabel] - public FrameworkHotUpdateSettings FrameworkHotUpdateSettings; - - public HybridCLRSettingTab() - { - FrameworkHotUpdateSettings = ScriptableSingletonUtil.Get(); - } - - [Sirenix.OdinInspector.Button(ButtonSizes.Large)] - private void RefreshAssembly() - { - SyncAssemblyContent.RefreshAssembly(); - } - - protected internal override void Save() - { - base.Save(); - EditorUtility.SetDirty(FrameworkHotUpdateSettings); - AssetDatabase.SaveAssets(); - } - } -} diff --git a/Editor/HybridCLR/HybridCLRSettingTab.cs.meta b/Editor/HybridCLR/HybridCLRSettingTab.cs.meta deleted file mode 100644 index c525112..0000000 --- a/Editor/HybridCLR/HybridCLRSettingTab.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: ab21809ce8ad4d5ebe950b70107deb00 -timeCreated: 1737525094 \ No newline at end of file diff --git a/Editor/HybridCLR/SynAssemblysContent.cs b/Editor/HybridCLR/SynAssemblysContent.cs index 5cd3fdb..be72960 100644 --- a/Editor/HybridCLR/SynAssemblysContent.cs +++ b/Editor/HybridCLR/SynAssemblysContent.cs @@ -1,15 +1,20 @@ +using System.IO; +using AlicizaX.Runtime; using UnityEditor; namespace AlicizaX.Editor { public static class SyncAssemblyContent { + [MenuItem("HybridCLR/Sync Assembly")] public static void RefreshAssembly() { - ScriptableSingletonUtil.Get().HotUpdateAssemblies = HybridCLR.Editor.SettingsUtil.HotUpdateAssemblyFilesIncludePreserved; - ScriptableSingletonUtil.Get().AOTMetaAssemblies = HybridCLR.Editor.SettingsUtil.AOTAssemblyNames; + AssemblyLoadData assemblyLoadData = new AssemblyLoadData(); + assemblyLoadData.HotUpdateAssemblies = HybridCLR.Editor.SettingsUtil.HotUpdateAssemblyFilesIncludePreserved; + assemblyLoadData.AOTMetaAssemblies = HybridCLR.Editor.SettingsUtil.AOTAssemblyNames; + File.WriteAllText("Assets/Resources/AssemblyLoadData.json", Utility.Json.ToJson(assemblyLoadData)); AssetDatabase.Refresh(); AssetDatabase.SaveAssets(); } } -} \ No newline at end of file +} diff --git a/Editor/Publisher.meta b/Editor/Publisher.meta deleted file mode 100644 index a405517..0000000 --- a/Editor/Publisher.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 33e7b1423d7c447a984510c0d398311f -timeCreated: 1737530322 \ No newline at end of file diff --git a/Editor/Publisher/FrameworkPublisherSettingTab.cs b/Editor/Publisher/FrameworkPublisherSettingTab.cs deleted file mode 100644 index 7c601dc..0000000 --- a/Editor/Publisher/FrameworkPublisherSettingTab.cs +++ /dev/null @@ -1,26 +0,0 @@ -using AlicizaX.Runtime; -using Sirenix.OdinInspector; -using UnityEditor; - -namespace AlicizaX.Editor -{ - [System.Serializable] - [DisplayName("发布设置")] - internal sealed class FrameworkPublisherSettingTab : GameFrameworkTabBase - { - [Required] [InlineEditor(InlineEditorObjectFieldModes.CompletelyHidden)] [DisableInPlayMode] [HideLabel] - public FrameworkPublishSettings FrameworkPublishSettings; - - public FrameworkPublisherSettingTab() - { - FrameworkPublishSettings = ScriptableSingletonUtil.Get(); - } - - protected internal override void Save() - { - base.Save(); - EditorUtility.SetDirty(FrameworkPublishSettings); - AssetDatabase.SaveAssets(); - } - } -} \ No newline at end of file diff --git a/Editor/Publisher/FrameworkPublisherSettingTab.cs.meta b/Editor/Publisher/FrameworkPublisherSettingTab.cs.meta deleted file mode 100644 index bb9d944..0000000 --- a/Editor/Publisher/FrameworkPublisherSettingTab.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: a6011b6ff89947deb4077e2578ad897e -timeCreated: 1737536018 \ No newline at end of file diff --git a/Runtime/Constant/AppBuilderSetting.cs b/Runtime/Constant/AppBuilderSetting.cs new file mode 100644 index 0000000..b41a771 --- /dev/null +++ b/Runtime/Constant/AppBuilderSetting.cs @@ -0,0 +1,29 @@ +using System; +using UnityEngine; + +namespace AlicizaX.Runtime +{ + [Serializable] + public class AppBuilderSetting + { + public static AppBuilderSetting Instance + { + get + { + if (_instance == null) + { + TextAsset text = Resources.Load("AppBuilderSetting"); + _instance = Utility.Json.ToObject(text.text); + } + + return _instance; + } + } + + private static AppBuilderSetting _instance; + + public bool DebugMode = false; + public int ResMode = 0; + public Language Language = Runtime.Language.ChineseSimplified; + } +} diff --git a/Runtime/Constant/FrameworkPublishSettings.cs.meta b/Runtime/Constant/AppBuilderSetting.cs.meta similarity index 100% rename from Runtime/Constant/FrameworkPublishSettings.cs.meta rename to Runtime/Constant/AppBuilderSetting.cs.meta diff --git a/Runtime/Constant/AssemblyLoadData.cs b/Runtime/Constant/AssemblyLoadData.cs new file mode 100644 index 0000000..589afa8 --- /dev/null +++ b/Runtime/Constant/AssemblyLoadData.cs @@ -0,0 +1,46 @@ +using System; +using System.Collections.Generic; +using AlicizaX.Runtime; +using UnityEngine; +using UnityEngine.Serialization; + +/// +/// HybridCLRCustomGlobalSettings. +/// +[Serializable] +public class AssemblyLoadData +{ + public static bool Enable + { + get + { +#if ENABLE_HYBRIDCLR + return true; +#else + return false; +#endif + } + } + + public static AssemblyLoadData Instance + { + get + { + if (_instance == null) + { + TextAsset text = Resources.Load("AssemblyLoadData"); + _instance = Utility.Json.ToObject(text.text); + } + + return _instance; + } + } + + private static AssemblyLoadData _instance; + + + public List HotUpdateAssemblies = new List() + { "GameLib.dll", "GameProto.dll", "GameBase.dll", "GameLogic.dll" }; + + public List AOTMetaAssemblies = new List() { "mscorlib.dll", "System.dll", "System.Core.dll" }; +} diff --git a/Runtime/Constant/FrameworkHotUpdateSettings.cs.meta b/Runtime/Constant/AssemblyLoadData.cs.meta similarity index 100% rename from Runtime/Constant/FrameworkHotUpdateSettings.cs.meta rename to Runtime/Constant/AssemblyLoadData.cs.meta diff --git a/Runtime/Constant/FrameworkHotUpdateSettings.cs b/Runtime/Constant/FrameworkHotUpdateSettings.cs deleted file mode 100644 index a296f49..0000000 --- a/Runtime/Constant/FrameworkHotUpdateSettings.cs +++ /dev/null @@ -1,44 +0,0 @@ -using System; -using System.Collections.Generic; -using AlicizaX.Runtime; -using UnityEngine; -using UnityEngine.Serialization; - -/// -/// HybridCLRCustomGlobalSettings. -/// -[Serializable] -public class FrameworkHotUpdateSettings : ScriptableObject -{ - public bool Enable - { - get - { -#if ENABLE_HYBRIDCLR - return true; -#else - return false; -#endif - } - } - - [Header("Auto sync with [HybridCLRGlobalSettings]")] [Tooltip("You should modify the file form file path [Assets/CustomHybridCLR/Settings/HybridCLRGlobalSettings.asset]")] - public List HotUpdateAssemblies = new List() { "GameLib.dll", "GameProto.dll", "GameBase.dll", "GameLogic.dll" }; - - [Header("Need manual setting!")] public List AOTMetaAssemblies = new List() { "mscorlib.dll", "System.dll", "System.Core.dll" }; - - /// - /// Dll of main business logic assembly - /// - public string LogicMainDllName = "GameLogic.dll"; - - /// - /// 程序集文本资产打包Asset后缀名 - /// - public string AssemblyTextAssetExtension = ".bytes"; - - /// - /// 程序集文本资产资源目录 - /// - public string AssemblyTextAssetPath = "AssetRaw/DLL"; -} diff --git a/Runtime/Constant/FrameworkPublishSettings.cs b/Runtime/Constant/FrameworkPublishSettings.cs deleted file mode 100644 index 21da74f..0000000 --- a/Runtime/Constant/FrameworkPublishSettings.cs +++ /dev/null @@ -1,58 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using Sirenix.OdinInspector; -using UnityEngine; - -namespace AlicizaX.Runtime -{ - [Serializable] - public class FrameworkPublishSettings : ScriptableObject - { - [BoxGroup("版本配置", true)] [TableList(ShowIndexLabels = false, DrawScrollView = true, MaxScrollViewHeight = 200, AlwaysExpanded = true)] - public List Configs = new List - { - new RemoteURLConfigSetting() { Version_Type = "Release", CheckUrl = "http://127.0.0.1:8080/UpdateData.json" }, - new RemoteURLConfigSetting() { Version_Type = "Dev", CheckUrl = "http://127.0.0.1:8080/UpdateData.json" }, - new RemoteURLConfigSetting() { Version_Type = "Test", CheckUrl = "http://127.0.0.1:8080/UpdateData.json" }, - }; - - [BoxGroup("版本配置", true)] [LabelText("当前版本")] [ValueDropdown("GetAllType", ExpandAllMenuItems = true)] [SerializeField] - public string AppStageType = "Dev"; - - public RemoteURLConfigSetting GetConfig() - { - return Configs.Find(s => s.Version_Type == AppStageType); - } - - - [ValueDropdown("GetResMode")] [BoxGroup("发布设置")] [LabelText("资源模式")] - public int ResMode; - - [BoxGroup("发布设置")] [LabelText("默认语言")] public Language Language = Runtime.Language.ChineseSimplified; - - private System.Collections.IEnumerable GetAllType - { - get { return Configs.Select(a => a.Version_Type).ToList(); } - } - - - private static System.Collections.IEnumerable GetResMode = new ValueDropdownList() - { - { "EditorSimulateMode", 0 }, - { "OfflinePlayMode", 1 }, - { "HostPlayMode", 2 }, - { "WebPlayMode", 3 }, - }; - } - - - [Serializable] - public class RemoteURLConfigSetting - { - [TableColumnWidth(200, Resizable = false)] - public string Version_Type = ""; - - public string CheckUrl = ""; - } -} diff --git a/Runtime/Constant/FrameworkSettingsUtils.cs b/Runtime/Constant/FrameworkSettingsUtils.cs deleted file mode 100644 index b9ea8bf..0000000 --- a/Runtime/Constant/FrameworkSettingsUtils.cs +++ /dev/null @@ -1,38 +0,0 @@ -using UnityEngine; - -namespace AlicizaX.Runtime -{ - public static class FrameworkSettingsUtils - { - public static FrameworkHotUpdateSettings FrameworkHotUpdateSettings - { - get - { - if (_frameworkHotUpdateSettings == null) - { - _frameworkHotUpdateSettings = Resources.Load("FrameworkHotUpdateSettings"); - } - - return _frameworkHotUpdateSettings; - } - } - - private static FrameworkHotUpdateSettings _frameworkHotUpdateSettings; - - - public static FrameworkPublishSettings FrameworkPublishSettings - { - get - { - if (_frameworkPublishSettings == null) - { - _frameworkPublishSettings = Resources.Load("FrameworkPublishSettings"); - } - - return _frameworkPublishSettings; - } - } - - private static FrameworkPublishSettings _frameworkPublishSettings; - } -} \ No newline at end of file diff --git a/Runtime/Constant/FrameworkSettingsUtils.cs.meta b/Runtime/Constant/FrameworkSettingsUtils.cs.meta deleted file mode 100644 index ef89f63..0000000 --- a/Runtime/Constant/FrameworkSettingsUtils.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: 2cd40b376b4a493faea997eb0ecf31c7 -timeCreated: 1737532661 \ No newline at end of file