diff --git a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/BundleConfig.cs b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/BundleConfig.cs index 8a68bfd1..ed928175 100644 --- a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/BundleConfig.cs +++ b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/BundleConfig.cs @@ -64,6 +64,11 @@ public class CryptogramType /// public static bool skipMainDownload = false; + /// + /// 是否檢查磁碟空間 + /// + public static bool checkDiskSpace = true; + /// /// App Preset Package 清單 /// diff --git a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PackageOperation.cs b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PackageOperation.cs index cedd371c..ce8cea93 100644 --- a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PackageOperation.cs +++ b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PackageOperation.cs @@ -10,6 +10,13 @@ namespace OxGFrame.AssetLoader.Bundle { public class PackageOperation { + public delegate void OnPatchRepairFailed(); + public delegate void OnPatchInitPatchModeFailed(); + public delegate void OnPatchVersionUpdateFailed(); + public delegate void OnPatchManifestUpdateFailed(); + public delegate void OnPatchCheckDiskNotEnoughSpace(int availableMegabytes, ulong patchTotalBytes); + public delegate void OnPatchDownloadFailed(string fileName, string error); + /// /// Instance id /// @@ -28,7 +35,7 @@ public int hashId public GroupInfo groupInfo { get; protected set; } /// - /// Package operaion event group + /// Package operation event group /// public EventGroup eventGroup { get; protected set; } @@ -37,6 +44,18 @@ public int hashId /// public bool skipDownload { get; protected set; } + /// + /// Enable or disable disk space check procedure (default is true) + /// + public bool checkDiskSpace = true; + + public OnPatchRepairFailed onPatchRepairFailed; + public OnPatchInitPatchModeFailed onPatchInitPatchModeFailed; + public OnPatchVersionUpdateFailed onPatchVersionUpdateFailed; + public OnPatchManifestUpdateFailed onPatchManifestUpdateFailed; + public OnPatchCheckDiskNotEnoughSpace onPatchCheckDiskNotEnoughSpace; + public OnPatchDownloadFailed onPatchDownloadFailed; + private ResourceDownloaderOperation[] _downloaders; private PackageInfoWithBuild[] _packageInfos; @@ -58,14 +77,15 @@ protected PackageOperation() this.eventGroup.AddListener(this._OnHandleEventMessage); this.eventGroup.AddListener(this._OnHandleEventMessage); this.eventGroup.AddListener(this._OnHandleEventMessage); + this.eventGroup.AddListener(this._OnHandleEventMessage); this.eventGroup.AddListener(this._OnHandleEventMessage); // User event receivers this.eventGroup.AddListener(this._OnHandleEventMessage); this.eventGroup.AddListener(this._OnHandleEventMessage); - this.eventGroup.AddListener(this._OnHandleEventMessage); this.eventGroup.AddListener(this._OnHandleEventMessage); this.eventGroup.AddListener(this._OnHandleEventMessage); this.eventGroup.AddListener(this._OnHandleEventMessage); + this.eventGroup.AddListener(this._OnHandleEventMessage); // Register PatchFsm this._patchFsm = new StateMachine(this); @@ -351,6 +371,33 @@ public bool IsRepair() } #endregion + #region Retry Events + public void UserTryPatchRepair() + { + PackageUserEvents.UserTryPatchRepair.SendEventMessage(this.hashId); + } + + public void UserTryInitPatchMode() + { + PackageUserEvents.UserTryInitPatchMode.SendEventMessage(this.hashId); + } + + public void UserTryPatchVersionUpdate() + { + PackageUserEvents.UserTryPatchVersionUpdate.SendEventMessage(this.hashId); + } + + public void UserTryPatchManifestUpdate() + { + PackageUserEvents.UserTryPatchManifestUpdate.SendEventMessage(this.hashId); + } + + public void UserTryCreateDownloader() + { + PackageUserEvents.UserTryCreateDownloader.SendEventMessage(this.hashId); + } + #endregion + #region Event Handle private void _OnHandleEventMessage(IEventMessage message) { @@ -397,23 +444,51 @@ private void _OnHandleEventMessage(IEventMessage message) } else if (message is PackageEvents.PatchRepairFailed) { - PackageUserEvents.UserTryPatchRepair.SendEventMessage(this.hashId); + if (this.onPatchRepairFailed != null) + this.onPatchRepairFailed.Invoke(); + else + PackageUserEvents.UserTryPatchRepair.SendEventMessage(this.hashId); } else if (message is PackageEvents.PatchInitPatchModeFailed) { - PackageUserEvents.UserTryInitPatchMode.SendEventMessage(this.hashId); + if (this.onPatchInitPatchModeFailed != null) + this.onPatchInitPatchModeFailed.Invoke(); + else + PackageUserEvents.UserTryInitPatchMode.SendEventMessage(this.hashId); } else if (message is PackageEvents.PatchVersionUpdateFailed) { - PackageUserEvents.UserTryPatchVersionUpdate.SendEventMessage(this.hashId); + if (this.onPatchVersionUpdateFailed != null) + this.onPatchVersionUpdateFailed.Invoke(); + else + PackageUserEvents.UserTryPatchVersionUpdate.SendEventMessage(this.hashId); } else if (message is PackageEvents.PatchManifestUpdateFailed) { - PackageUserEvents.UserTryPatchManifestUpdate.SendEventMessage(this.hashId); + if (this.onPatchManifestUpdateFailed != null) + this.onPatchManifestUpdateFailed.Invoke(); + else + PackageUserEvents.UserTryPatchManifestUpdate.SendEventMessage(this.hashId); + } + else if (message is PackageEvents.PatchCheckDiskNotEnoughSpace) + { + if (this.onPatchCheckDiskNotEnoughSpace != null) + { + var msgData = message as PackageEvents.PatchCheckDiskNotEnoughSpace; + this.onPatchCheckDiskNotEnoughSpace.Invoke(msgData.availableMegabytes, msgData.patchTotalBytes); + } + else + PackageUserEvents.UserTryCreateDownloader.SendEventMessage(this.hashId); } else if (message is PackageEvents.PatchDownloadFailed) { - PackageUserEvents.UserTryCreateDownloader.SendEventMessage(this.hashId); + if (this.onPatchDownloadFailed != null) + { + var msgData = message as PackageEvents.PatchDownloadFailed; + this.onPatchDownloadFailed.Invoke(msgData.fileName, msgData.error); + } + else + PackageUserEvents.UserTryCreateDownloader.SendEventMessage(this.hashId); } // Package user events else if (message is PackageUserEvents.UserTryPatchRepair) diff --git a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchEvent/PackageEvents.cs b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchEvent/PackageEvents.cs index 3926db74..b6b99d8e 100644 --- a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchEvent/PackageEvents.cs +++ b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchEvent/PackageEvents.cs @@ -8,9 +8,10 @@ namespace OxGFrame.AssetLoader.PatchEvent // 2. PatchInitPatchModeFailed // 3. PatchVersionUpdateFailed // 4. PatchManifestUpdateFailed - // 5. PatchDownloadProgression - // 6. PatchDownloadFailed - // 7. PatchDownloadCanceled + // 5. PatchCheckDiskNotEnoughSpace + // 6. PatchDownloadProgression + // 7. PatchDownloadFailed + // 8. PatchDownloadCanceled public static class PackageEvents { @@ -77,6 +78,23 @@ public static void SendEventMessage(int groupId) } } + /// + /// Patch check disk if not enough space + /// + public class PatchCheckDiskNotEnoughSpace : IEventMessage + { + public int availableMegabytes; + public ulong patchTotalBytes; + + public static void SendEventMessage(int availableMegabytes, ulong patchTotalBytes) + { + var msg = new PatchCheckDiskNotEnoughSpace(); + msg.availableMegabytes = availableMegabytes; + msg.patchTotalBytes = patchTotalBytes; + UniEvent.SendMessage(msg); + } + } + /// /// Patch download progression /// diff --git a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchEvent/PatchEvents.cs b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchEvent/PatchEvents.cs index e5566ca3..3c8eb8de 100644 --- a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchEvent/PatchEvents.cs +++ b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchEvent/PatchEvents.cs @@ -12,9 +12,10 @@ namespace OxGFrame.AssetLoader.PatchEvent // 5. PatchVersionUpdateFailed // 6. PatchManifestUpdateFailed // 7. PatchCreateDownloader - // 8. PatchDownloadProgression - // 9. PatchDownloadFailed - // 10. PatchDownloadCanceled + // 8. PatchCheckDiskNotEnoughSpace + // 9. PatchDownloadProgression + // 10. PatchDownloadFailed + // 11. PatchDownloadCanceled public static class PatchEvents { @@ -120,6 +121,23 @@ public static void SendEventMessage(GroupInfo[] groupInfos) } } + /// + /// Patch check disk if not enough space + /// + public class PatchCheckDiskNotEnoughSpace : IEventMessage + { + public int availableMegabytes; + public ulong patchTotalBytes; + + public static void SendEventMessage(int availableMegabytes, ulong patchTotalBytes) + { + var msg = new PatchCheckDiskNotEnoughSpace(); + msg.availableMegabytes = availableMegabytes; + msg.patchTotalBytes = patchTotalBytes; + UniEvent.SendMessage(msg); + } + } + /// /// Patch download progression /// diff --git a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchEvent/PatchUserEvents.cs b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchEvent/PatchUserEvents.cs index 62c0650c..5aa7acf7 100644 --- a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchEvent/PatchUserEvents.cs +++ b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchEvent/PatchUserEvents.cs @@ -6,10 +6,10 @@ namespace OxGFrame.AssetLoader.PatchEvent // 0. UserTryPatchRepair // 1. UserTryAppVersionUpdate // 2. UserTryInitPatchMode - // 3. UserBeginDownload - // 4. UserTryPatchVersionUpdate - // 5. UserTryPatchManifestUpdate - // 6. UserTryCreateDownloader + // 3. UserTryPatchVersionUpdate + // 4. UserTryPatchManifestUpdate + // 5. UserTryCreateDownloader + // 6. UserBeginDownload public class PatchUserEvents { @@ -26,7 +26,7 @@ public static void SendEventMessage() } /// - /// User retry update app verison again + /// User retry update app version again /// public class UserTryAppVersionUpdate : IEventMessage { @@ -49,19 +49,6 @@ public static void SendEventMessage() } } - /// - /// User begin download - /// - public class UserBeginDownload : IEventMessage - { - public static void SendEventMessage(GroupInfo groupInfo) - { - var msg = new UserBeginDownload(); - PatchManager.SetLastGroupInfo(groupInfo); - UniEvent.SendMessage(msg); - } - } - /// /// User retry update patch version again /// @@ -97,5 +84,18 @@ public static void SendEventMessage() UniEvent.SendMessage(msg); } } + + /// + /// User begin download + /// + public class UserBeginDownload : IEventMessage + { + public static void SendEventMessage(GroupInfo groupInfo) + { + var msg = new UserBeginDownload(); + PatchManager.SetLastGroupInfo(groupInfo); + UniEvent.SendMessage(msg); + } + } } } \ No newline at end of file diff --git a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchFsm/PackageFsmStates.cs b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchFsm/PackageFsmStates.cs index 274a2f01..9ab6f0f8 100644 --- a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchFsm/PackageFsmStates.cs +++ b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchFsm/PackageFsmStates.cs @@ -527,6 +527,23 @@ private async UniTask _StartDownload() totalBytes += downloader.TotalDownloadBytes; } +#if !UNITY_WEBGL + // Check flag if enabled + if ((this._machine.Owner as PackageOperation).checkDiskSpace) + { + // Check disk space + int availableDiskSpaceMegabytes = BundleUtility.CheckAvailableDiskSpaceMegabytes(); + int patchTotalMegabytes = (int)(totalBytes / (1 << 20)); + Logging.Print($"[Disk Space Check] Available Disk Space Size: {BundleUtility.GetMegabytesToString(availableDiskSpaceMegabytes)}, Total Patch Size: {BundleUtility.GetBytesToString((ulong)totalBytes)}"); + if (patchTotalMegabytes > availableDiskSpaceMegabytes) + { + PackageEvents.PatchCheckDiskNotEnoughSpace.SendEventMessage(availableDiskSpaceMegabytes, (ulong)totalBytes); + Logging.Print($"Disk Not Enough Space!!! Available Disk Space Size: {BundleUtility.GetMegabytesToString(availableDiskSpaceMegabytes)}, Total Patch Size: {BundleUtility.GetBytesToString((ulong)totalBytes)}"); + return; + } + } +#endif + // Begin Download int currentCount = 0; long currentBytes = 0; diff --git a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchFsm/PatchFsmStates.cs b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchFsm/PatchFsmStates.cs index c64b234c..8bbd499c 100644 --- a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchFsm/PatchFsmStates.cs +++ b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchFsm/PatchFsmStates.cs @@ -11,6 +11,7 @@ using System.Linq; using UniFramework.Machine; using YooAsset; +using static UnityEngine.Mesh; namespace OxGFrame.AssetLoader.PatchFsm { @@ -812,6 +813,23 @@ private async UniTask _StartDownload() totalBytes += downloader.TotalDownloadBytes; } +#if !UNITY_WEBGL + // Check flag if enabled + if (BundleConfig.checkDiskSpace) + { + // Check disk space + int availableDiskSpaceMegabytes = BundleUtility.CheckAvailableDiskSpaceMegabytes(); + int patchTotalMegabytes = (int)(totalBytes / (1 << 20)); + Logging.Print($"[Disk Space Check] Available Disk Space Size: {BundleUtility.GetMegabytesToString(availableDiskSpaceMegabytes)}, Total Patch Size: {BundleUtility.GetBytesToString((ulong)totalBytes)}"); + if (patchTotalMegabytes > availableDiskSpaceMegabytes) + { + PatchEvents.PatchCheckDiskNotEnoughSpace.SendEventMessage(availableDiskSpaceMegabytes, (ulong)totalBytes); + Logging.Print($"Disk Not Enough Space!!! Available Disk Space Size: {BundleUtility.GetMegabytesToString(availableDiskSpaceMegabytes)}, Total Patch Size: {BundleUtility.GetBytesToString((ulong)totalBytes)}"); + return; + } + } +#endif + // Begin Download int currentCount = 0; long currentBytes = 0; diff --git a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchLauncher.cs b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchLauncher.cs index c252ba82..45b54e3b 100644 --- a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchLauncher.cs +++ b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchLauncher.cs @@ -18,6 +18,8 @@ internal class PatchLauncher : MonoBehaviour public BundleConfig.SemanticRule semanticRule = new BundleConfig.SemanticRule(); [Tooltip("If checked, will skip preset app packages download step of the patch (force download while playing)."), ConditionalField(nameof(playMode), false, BundleConfig.PlayMode.HostMode)] public bool skipMainDownload = false; + [Tooltip("If checked, will check disk space is it enough while patch checking."), ConditionalField(new string[] { nameof(playMode), nameof(skipMainDownload) }, new bool[] { false, true }, BundleConfig.PlayMode.HostMode)] + public bool checkDiskSpace = true; [Separator("Preset App Packages")] [Tooltip("The first element will be default app package.\n\nNote: The presets will combine in main download of the patch.")] @@ -62,6 +64,7 @@ private async void Awake() { BundleConfig.semanticRule = this.semanticRule; BundleConfig.skipMainDownload = this.skipMainDownload; + BundleConfig.checkDiskSpace = this.checkDiskSpace; } // For WebGL Mode else if (this.playMode == BundleConfig.PlayMode.WebGLMode) diff --git a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchManager.cs b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchManager.cs index 2b7266ba..ff08f833 100644 --- a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchManager.cs +++ b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Bundle/PatchManager.cs @@ -106,10 +106,10 @@ public PatchManager() this._userEvents.AddListener(this._OnHandleEventMessage); this._userEvents.AddListener(this._OnHandleEventMessage); this._userEvents.AddListener(this._OnHandleEventMessage); - this._userEvents.AddListener(this._OnHandleEventMessage); this._userEvents.AddListener(this._OnHandleEventMessage); this._userEvents.AddListener(this._OnHandleEventMessage); this._userEvents.AddListener(this._OnHandleEventMessage); + this._userEvents.AddListener(this._OnHandleEventMessage); // 註冊 PatchFsm 處理流程 this._patchFsm = new StateMachine(this); @@ -294,10 +294,6 @@ private void _OnHandleEventMessage(IEventMessage message) { this._patchFsm.ChangeState(); } - else if (message is PatchUserEvents.UserBeginDownload) - { - this._patchFsm.ChangeState(); - } else if (message is PatchUserEvents.UserTryPatchVersionUpdate) { this._patchFsm.ChangeState(); @@ -310,6 +306,10 @@ private void _OnHandleEventMessage(IEventMessage message) { this._patchFsm.ChangeState(); } + else if (message is PatchUserEvents.UserBeginDownload) + { + this._patchFsm.ChangeState(); + } else { throw new System.NotImplementedException($"{message.GetType()}"); diff --git a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/OxGFrame.AssetLoader.Runtime.asmdef b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/OxGFrame.AssetLoader.Runtime.asmdef index 6c7a146b..dd08019b 100644 --- a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/OxGFrame.AssetLoader.Runtime.asmdef +++ b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/OxGFrame.AssetLoader.Runtime.asmdef @@ -8,7 +8,8 @@ "GUID:f22fac247a56d2d41b687bb0d900e54e", "GUID:c55575a9f1747c240822f4b7e0400716", "GUID:f3b8d4b152174ca47b578c325544e581", - "GUID:981f0bbbcbf62b74c9821862b0cd0202" + "GUID:981f0bbbcbf62b74c9821862b0cd0202", + "GUID:bcd02d5781d1e4f13a52b4c351be62d5" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Utility/BundleUtility.cs b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Utility/BundleUtility.cs index 00a3090e..cd8b9cb4 100644 --- a/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Utility/BundleUtility.cs +++ b/Assets/OxGFrame/AssetLoader/Scripts/Runtime/Utility/BundleUtility.cs @@ -1,14 +1,14 @@ -using System.IO; -using System.Text; +using Cysharp.Threading.Tasks; +using OxGFrame.AssetLoader.Bundle; +using OxGKit.LoggingSystem; +using SimpleDiskUtils; using System; -using Cysharp.Threading.Tasks; -using UnityEngine.Networking; -using UnityEngine; -using System.Threading; using System.Collections.Generic; -using OxGKit.LoggingSystem; +using System.IO; using System.Linq; -using OxGFrame.AssetLoader.Bundle; +using System.Text; +using System.Threading; +using UnityEngine.Networking; namespace OxGFrame.AssetLoader.Utility { @@ -56,6 +56,23 @@ public static string GetBytesToString(ulong bytes) return (bytes / (1024 * 1024 * 1024 * 1f)).ToString("f2") + "GB"; } } + + /// + /// Megabytes ToString (MB, GB) + /// + /// + /// + public static string GetMegabytesToString(int megabytes) + { + if (megabytes < (1024 * 1f)) + { + return (megabytes).ToString("f2") + "MB"; + } + else + { + return (megabytes / (1024 * 1f)).ToString("f2") + "GB"; + } + } #endregion #region MD5 @@ -346,5 +363,21 @@ public static string GetVersionNumber(string seed, int length) } } #endregion + + #region Disk Operation + public static int CheckAvailableDiskSpaceMegabytes() + { +#if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN + string rootPath = BundleConfig.GetLocalSandboxRootPath(); + string diskLetter = rootPath.Substring(0, 3); + return DiskUtils.CheckAvailableSpace(diskLetter); +#elif UNITY_ANDROID + string rootPath = BundleConfig.GetLocalSandboxRootPath(); + return DiskUtils.CheckAvailableSpace(rootPath); +#else + return DiskUtils.CheckAvailableSpace(); +#endif + } + #endregion } } diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils.meta new file mode 100644 index 00000000..e2ceb3ec --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3db0875bbe7ca1542a15359d8e71d491 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/.gitignore b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/.gitignore new file mode 100644 index 00000000..4293e442 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/.gitignore @@ -0,0 +1,4 @@ +# Mac OS X +*.DS_Store +*mono_crash.* +*.idea \ No newline at end of file diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android.meta new file mode 100644 index 00000000..70fe89fb --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8212c9ee307404769ae11f70e4e6aa72 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/.gitignore b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/.gitignore new file mode 100644 index 00000000..37d1e485 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/.gitignore @@ -0,0 +1,94 @@ +reated by https://www.gitignore.io/api/andro,android,gradle,osx + +#!! ERROR: andro is undefined. Use list command to see defined gitignore types !!# + +### Android ### +# Built application files +*.apk +*.ap_ + +# Files for the ART/Dalvik VM +*.dex + +# Java class files +*.class + +# Generated files +bin/ +gen/ +out/ + +# Gradle files +.gradle/ +build/ + +# Local configuration file (sdk path, etc) +local.properties + +# Proguard folder generated by Eclipse +proguard/ + +# Log Files +*.log + +# Android Studio Navigation editor temp files +.navigation/ + +# Android Studio captures folder +captures/ + +# Intellij +*.iml +.idea/workspace.xml + +# Keystore files +*.jks + +### Android Patch ### +gen-external-apklibs + + +### OSX ### +*.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + + +### Gradle ### +.gradle +build/ + +# Ignore Gradle GUI config +gradle-app.setting + +# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored) +!gradle-wrapper.jar + +# Cache of project +.gradletasknamecache + +# # Work around https://youtrack.jetbrains.com/issue/IDEA-116898 +# gradle/wrapper/gradle-wrapper.properties diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils.meta new file mode 100644 index 00000000..27dae63a --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3c029577b9c71478a8ad49819b049cee +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/.gitignore b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/.gitignore new file mode 100644 index 00000000..c6cbe562 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/.gitignore @@ -0,0 +1,8 @@ +*.iml +.gradle +/local.properties +/.idea/workspace.xml +/.idea/libraries +.DS_Store +/build +/captures diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app.meta new file mode 100644 index 00000000..8f1dfec7 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 249115343360b4bee90caab2ed879e24 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/.gitignore b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/.gitignore new file mode 100644 index 00000000..796b96d1 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/.gitignore @@ -0,0 +1 @@ +/build diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/build.gradle b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/build.gradle new file mode 100644 index 00000000..f58ffd54 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/build.gradle @@ -0,0 +1,25 @@ +apply plugin: 'com.android.library' + +android { + compileSdkVersion 29 + buildToolsVersion "29.0.0" + + defaultConfig { + minSdkVersion 16 + targetSdkVersion 23 + } + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + } + } +} + +dependencies { + implementation fileTree(dir: 'libs', include: ['*.jar']) + implementation "androidx.core:core:1.1.0" + + testCompile 'junit:junit:4.12' + compile 'com.android.support:appcompat-v7:23.2.0' +} \ No newline at end of file diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/build.gradle.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/build.gradle.meta new file mode 100644 index 00000000..c4a8fcff --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/build.gradle.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: e78935c071cf749979ba15fae9184bc1 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/proguard-rules.pro b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/proguard-rules.pro new file mode 100644 index 00000000..37ec7a0d --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/proguard-rules.pro @@ -0,0 +1,17 @@ +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in /Users/dikra-prasetya/Library/Android/sdk/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the proguardFiles +# directive in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/proguard-rules.pro.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/proguard-rules.pro.meta new file mode 100644 index 00000000..8eda8ac7 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/proguard-rules.pro.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 623a1b4f2cbbd4423a9a585efa108728 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src.meta new file mode 100644 index 00000000..682daf50 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3a4ffc0e2e525428595aa8fee6de5459 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest.meta new file mode 100644 index 00000000..1f4fc452 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: cff7f12cc104e41fdbfc8fd3e37120e4 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java.meta new file mode 100644 index 00000000..01e1dd54 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 84d6873492ce2496b83d35ab5bfae1d9 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java/com.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java/com.meta new file mode 100644 index 00000000..4b93fc68 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java/com.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: cd1dc32d1295744eda2359adf31a05d1 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java/com/dikra.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java/com/dikra.meta new file mode 100644 index 00000000..34a23a95 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java/com/dikra.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7393aaf4f8f024ad6a69e920fd77c81f +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java/com/dikra/diskutils.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java/com/dikra/diskutils.meta new file mode 100644 index 00000000..8a753f46 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java/com/dikra/diskutils.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a0564657ee8af4238a71d8914b23285a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java/com/dikra/diskutils/ApplicationTest.java b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java/com/dikra/diskutils/ApplicationTest.java new file mode 100644 index 00000000..7d80361f --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java/com/dikra/diskutils/ApplicationTest.java @@ -0,0 +1,13 @@ +package com.dikra.diskutils; + +import android.app.Application; +import android.test.ApplicationTestCase; + +/** + * Testing Fundamentals + */ +public class ApplicationTest extends ApplicationTestCase { + public ApplicationTest() { + super(Application.class); + } +} \ No newline at end of file diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java/com/dikra/diskutils/ApplicationTest.java.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java/com/dikra/diskutils/ApplicationTest.java.meta new file mode 100644 index 00000000..d6a8f03e --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/androidTest/java/com/dikra/diskutils/ApplicationTest.java.meta @@ -0,0 +1,32 @@ +fileFormatVersion: 2 +guid: fbb21fc2aaba547beb452cd8d1552cc5 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Android: Android + second: + enabled: 1 + settings: {} + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + DefaultValueInitialized: true + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main.meta new file mode 100644 index 00000000..a277bb60 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f1e51864063074a339c733a84fc6bf78 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/AndroidManifest.xml b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/AndroidManifest.xml new file mode 100644 index 00000000..b7018ed7 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/AndroidManifest.xml @@ -0,0 +1,13 @@ + + + + + + + diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/AndroidManifest.xml.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/AndroidManifest.xml.meta new file mode 100644 index 00000000..3a16642f --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/AndroidManifest.xml.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9366909e4769f47889a1a4b1a3e07616 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java.meta new file mode 100644 index 00000000..63f0fef0 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 40a5da157f3084b8189c65c4ab6fe9ed +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java/com.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java/com.meta new file mode 100644 index 00000000..783b6a3d --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java/com.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f5644569e13644d3d9ebe68412d8a46c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java/com/dikra.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java/com/dikra.meta new file mode 100644 index 00000000..bb7dcf9f --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java/com/dikra.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d32feb24b45184543ad3d63f39684309 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java/com/dikra/diskutils.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java/com/dikra/diskutils.meta new file mode 100644 index 00000000..a94affba --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java/com/dikra/diskutils.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fbedf83d5dbee4dd8abf15f563f4153e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java/com/dikra/diskutils/DiskUtils.java b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java/com/dikra/diskutils/DiskUtils.java new file mode 100644 index 00000000..8b33deca --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java/com/dikra/diskutils/DiskUtils.java @@ -0,0 +1,136 @@ +package com.dikra.diskutils; + +/** + * Created by dikra-prasetya on 4/1/16. + */ + + +import android.os.Build; +import android.os.Environment; +import android.os.StatFs; +import java.math.BigInteger; + + +public class DiskUtils { + private static final long MEGA_BYTE = 1048576; + + /** + * Calculates total space on disk. + * @param external Queries external disk if true, queries internal disk otherwise. + * @return Total disk space in MB. + */ + public static int totalSpace(boolean external) + { + long totalBlocks; + long blockSize; + + StatFs statFs = getStats(external); + if (Build.VERSION.SDK_INT < 18){ + totalBlocks = statFs.getBlockCount(); + blockSize = statFs.getBlockSize(); + } + else + { + totalBlocks = statFs.getBlockCountLong(); + blockSize = statFs.getBlockSizeLong(); + } + + BigInteger total = BigInteger.valueOf(totalBlocks).multiply(BigInteger.valueOf(blockSize)).divide(BigInteger.valueOf(MEGA_BYTE)); + + return total.intValue(); + } + + /** + * Calculates available space on disk. + * @param path Gets the disk that contains the path, queries the internal disk if this is null or empty + * @return Available disk space in MB. + */ + public static int availableSpace(String path) + { + if (path == null || path.isEmpty()) { + path = Environment.getRootDirectory().getAbsolutePath(); + } + + long totalBlocks; + long blockSize; + + StatFs statFs = new StatFs(path); + if (Build.VERSION.SDK_INT < 18) { + totalBlocks = statFs.getAvailableBlocks(); + blockSize = statFs.getBlockSize(); + } else { + totalBlocks = statFs.getAvailableBlocksLong(); + blockSize = statFs.getBlockSizeLong(); + } + BigInteger total = BigInteger.valueOf(totalBlocks).multiply(BigInteger.valueOf(blockSize)).divide(BigInteger.valueOf(MEGA_BYTE)); + + return total.intValue(); + } + /** + * Calculates available space on disk. + * @param external Queries external disk if true, queries internal disk otherwise. + * @return Available disk space in MB. + */ + public static int availableSpace(boolean external) + { + long availableBlocks; + long blockSize; + + StatFs statFs = getStats(external); + if (Build.VERSION.SDK_INT < 18){ + availableBlocks = statFs.getAvailableBlocks(); + blockSize = statFs.getBlockSize(); + } + else + { + availableBlocks = statFs.getAvailableBlocksLong(); + blockSize = statFs.getBlockSizeLong(); + } + + BigInteger free = BigInteger.valueOf(availableBlocks).multiply(BigInteger.valueOf(blockSize)).divide(BigInteger.valueOf(MEGA_BYTE)); + + return free.intValue(); + } + + /** + * Calculates busy space on disk. + * @param external Queries external disk if true, queries internal disk otherwise. + * @return Busy disk space in MB. + */ + public static int busySpace(boolean external) + { + BigInteger total; + BigInteger free; + + StatFs statFs = getStats(external); + + if (Build.VERSION.SDK_INT < 18){ + total = BigInteger.valueOf(statFs.getBlockCount()).multiply(BigInteger.valueOf(statFs.getBlockSize())); + free = BigInteger.valueOf(statFs.getFreeBlocks()).multiply(BigInteger.valueOf(statFs.getBlockSize())); + } + else + { + total = BigInteger.valueOf(statFs.getBlockCountLong()).multiply(BigInteger.valueOf(statFs.getBlockSizeLong())); + free = BigInteger.valueOf(statFs.getFreeBlocksLong()).multiply(BigInteger.valueOf(statFs.getBlockSizeLong())); + } + + BigInteger ret = total.subtract(free).divide(BigInteger.valueOf(MEGA_BYTE)); + + return ret.intValue(); + } + + private static StatFs getStats(boolean external){ + String path; + + if (external){ + path = Environment.getExternalStorageDirectory().getAbsolutePath(); + } + else{ + path = Environment.getRootDirectory().getAbsolutePath(); + } + + return new StatFs(path); + } + +} + diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java/com/dikra/diskutils/DiskUtils.java.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java/com/dikra/diskutils/DiskUtils.java.meta new file mode 100644 index 00000000..efe3ed35 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/java/com/dikra/diskutils/DiskUtils.java.meta @@ -0,0 +1,32 @@ +fileFormatVersion: 2 +guid: 4daab3d9ca9314098a4ad541470103c5 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Android: Android + second: + enabled: 1 + settings: {} + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + DefaultValueInitialized: true + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res.meta new file mode 100644 index 00000000..7006eb3e --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 939c5b7cbcf5b427299dace8285b14a9 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-hdpi.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-hdpi.meta new file mode 100644 index 00000000..76ec2a48 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-hdpi.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9da43d5f2815f442abceca3bcc4ca201 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-hdpi/ic_launcher.png b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 00000000..cde69bcc Binary files /dev/null and b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-hdpi/ic_launcher.png differ diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-hdpi/ic_launcher.png.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-hdpi/ic_launcher.png.meta new file mode 100644 index 00000000..433faaf9 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-hdpi/ic_launcher.png.meta @@ -0,0 +1,96 @@ +fileFormatVersion: 2 +guid: 48010182466aa4d8c9ade424b0a6aa9e +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-mdpi.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-mdpi.meta new file mode 100644 index 00000000..b08b5338 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-mdpi.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 816be5006e27d40ffa34994787e6d32d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-mdpi/ic_launcher.png b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 00000000..c133a0cb Binary files /dev/null and b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-mdpi/ic_launcher.png differ diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-mdpi/ic_launcher.png.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-mdpi/ic_launcher.png.meta new file mode 100644 index 00000000..aa7bd61c --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-mdpi/ic_launcher.png.meta @@ -0,0 +1,96 @@ +fileFormatVersion: 2 +guid: 10259f8f744144bbba3deb2435ad8e4c +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xhdpi.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xhdpi.meta new file mode 100644 index 00000000..5ec0b6a1 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xhdpi.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ec8cce1fd993c42f4b1df2ad743ea7c1 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 00000000..bfa42f0e Binary files /dev/null and b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xhdpi/ic_launcher.png.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xhdpi/ic_launcher.png.meta new file mode 100644 index 00000000..c7c0ff60 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xhdpi/ic_launcher.png.meta @@ -0,0 +1,96 @@ +fileFormatVersion: 2 +guid: 14a173a444a3f42dbaf06c7b8a26243c +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxhdpi.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxhdpi.meta new file mode 100644 index 00000000..697f8ed6 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxhdpi.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b68360aef4f9a4d4da09c978d8a0abd6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 00000000..324e72cd Binary files /dev/null and b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxhdpi/ic_launcher.png.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxhdpi/ic_launcher.png.meta new file mode 100644 index 00000000..c59102e0 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxhdpi/ic_launcher.png.meta @@ -0,0 +1,96 @@ +fileFormatVersion: 2 +guid: 49c7844e379de42c6bf80a9d43928a7e +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxxhdpi.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxxhdpi.meta new file mode 100644 index 00000000..dd2b18b1 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxxhdpi.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5b849b2d17ea14951bc00ba411312858 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 00000000..aee44e13 Binary files /dev/null and b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png.meta new file mode 100644 index 00000000..77dd6de0 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png.meta @@ -0,0 +1,96 @@ +fileFormatVersion: 2 +guid: 409d1713e643549b48e2eddc100865bf +TextureImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 11 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + vTOnly: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: 0 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + flipbookRows: 1 + flipbookColumns: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + ignorePngGamma: 0 + applyGammaDecoding: 0 + platformSettings: + - serializedVersion: 3 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + forceMaximumCompressionQuality_BC6H_BC7: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + internalID: 0 + vertices: [] + indices: + edges: [] + weights: [] + secondaryTextures: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values.meta new file mode 100644 index 00000000..48a46509 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1af7363bd9baa4173a60159e85118aa2 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/colors.xml b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/colors.xml new file mode 100644 index 00000000..3ab3e9cb --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/colors.xml @@ -0,0 +1,6 @@ + + + #3F51B5 + #303F9F + #FF4081 + diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/colors.xml.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/colors.xml.meta new file mode 100644 index 00000000..e8f3e9e6 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/colors.xml.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 0bf9daadcba794bd7bc8cfa7fe16971b +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/strings.xml b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/strings.xml new file mode 100644 index 00000000..9e71328a --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/strings.xml @@ -0,0 +1,3 @@ + + simple-disk-utils + diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/strings.xml.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/strings.xml.meta new file mode 100644 index 00000000..e2e092f8 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/strings.xml.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: b98dbd27371fa4fc2a5eeb53dfd32a39 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/styles.xml b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/styles.xml new file mode 100644 index 00000000..5885930d --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/styles.xml @@ -0,0 +1,11 @@ + + + + + + diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/styles.xml.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/styles.xml.meta new file mode 100644 index 00000000..b1bf49aa --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/main/res/values/styles.xml.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8c56c993581a247429fda5fec68d9651 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test.meta new file mode 100644 index 00000000..22c418c2 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7ac0af82b2ab6465095bfe5e27f79344 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java.meta new file mode 100644 index 00000000..f0d9f83d --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: eec7b5af7914447bfaefa71d723b8ad7 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java/com.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java/com.meta new file mode 100644 index 00000000..35c83863 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java/com.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 21be63ccef8e54297a6f71eacf90481f +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java/com/dikra.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java/com/dikra.meta new file mode 100644 index 00000000..93dc8be7 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java/com/dikra.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8cf1659b206fa44e7ac186b22aba59cc +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java/com/dikra/simple_unity_diskutils.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java/com/dikra/simple_unity_diskutils.meta new file mode 100644 index 00000000..d15049ae --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java/com/dikra/simple_unity_diskutils.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 585a7dfc5a7434abfb72f5072f8aac0b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java/com/dikra/simple_unity_diskutils/ExampleUnitTest.java b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java/com/dikra/simple_unity_diskutils/ExampleUnitTest.java new file mode 100644 index 00000000..0a082201 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java/com/dikra/simple_unity_diskutils/ExampleUnitTest.java @@ -0,0 +1,15 @@ +package com.dikra.diskutils; + +import org.junit.Test; + +import static org.junit.Assert.*; + +/** + * To work on unit tests, switch the Test Artifact in the Build Variants view. + */ +public class ExampleUnitTest { + @Test + public void addition_isCorrect() throws Exception { + assertEquals(4, 2 + 2); + } +} \ No newline at end of file diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java/com/dikra/simple_unity_diskutils/ExampleUnitTest.java.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java/com/dikra/simple_unity_diskutils/ExampleUnitTest.java.meta new file mode 100644 index 00000000..78bb4d9f --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/app/src/test/java/com/dikra/simple_unity_diskutils/ExampleUnitTest.java.meta @@ -0,0 +1,70 @@ +fileFormatVersion: 2 +guid: b2b18c09b1e7b4852ad39163a63a8dad +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + : Any + second: + enabled: 0 + settings: + Exclude Android: 1 + Exclude Editor: 1 + Exclude Linux64: 1 + Exclude OSXUniversal: 1 + Exclude Win: 1 + Exclude Win64: 1 + - first: + Android: Android + second: + enabled: 0 + settings: + CPU: ARMv7 + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: AnyOS + - first: + Standalone: Linux64 + second: + enabled: 0 + settings: + CPU: x86_64 + - first: + Standalone: OSXUniversal + second: + enabled: 0 + settings: + CPU: None + - first: + Standalone: Win + second: + enabled: 0 + settings: + CPU: x86 + - first: + Standalone: Win64 + second: + enabled: 0 + settings: + CPU: x86_64 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/build.gradle b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/build.gradle new file mode 100644 index 00000000..279fad14 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/build.gradle @@ -0,0 +1,25 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. + +buildscript { + repositories { + jcenter() + google() + } + + dependencies { + classpath 'com.android.tools.build:gradle:3.5.0' + + } +} + + +allprojects { + repositories { + jcenter() + google() + } +} + +task clean(type: Delete) { + delete rootProject.buildDir +} diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/build.gradle.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/build.gradle.meta new file mode 100644 index 00000000..a6c3ec39 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/build.gradle.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 6585e2db0959e45c480c0cd7fc23fc85 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle.meta new file mode 100644 index 00000000..f31be803 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ea9b6a427d9fe4d338f4b1e89f00db17 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle.properties b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle.properties new file mode 100644 index 00000000..8e107272 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle.properties @@ -0,0 +1,20 @@ +# Project-wide Gradle settings. + +# IDE (e.g. Android Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. + +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html + +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +# Default value: -Xmx10248m -XX:MaxPermSize=256m +# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 + +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true + +distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip \ No newline at end of file diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle.properties.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle.properties.meta new file mode 100644 index 00000000..2b588e3e --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle.properties.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d8bf4fc7961b94731a030e43fe627892 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle/wrapper.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle/wrapper.meta new file mode 100644 index 00000000..b84a40b2 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle/wrapper.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7e140836d717d4317908c495854dc5da +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle/wrapper/gradle-wrapper.jar b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 00000000..05ef575b Binary files /dev/null and b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle/wrapper/gradle-wrapper.jar.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle/wrapper/gradle-wrapper.jar.meta new file mode 100644 index 00000000..ca8241f1 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle/wrapper/gradle-wrapper.jar.meta @@ -0,0 +1,32 @@ +fileFormatVersion: 2 +guid: 96dfda7b0bda34c38bcfa25c640603fc +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Android: Android + second: + enabled: 1 + settings: {} + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + DefaultValueInitialized: true + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle/wrapper/gradle-wrapper.properties b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 00000000..b6d1b478 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Wed Oct 21 11:34:03 PDT 2015 +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle/wrapper/gradle-wrapper.properties.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle/wrapper/gradle-wrapper.properties.meta new file mode 100644 index 00000000..06078795 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradle/wrapper/gradle-wrapper.properties.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8086224f6293f47448634e12567071f8 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradlew b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradlew new file mode 100644 index 00000000..9d82f789 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradlew @@ -0,0 +1,160 @@ +#!/usr/bin/env bash + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn ( ) { + echo "$*" +} + +die ( ) { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; +esac + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradlew.bat b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradlew.bat new file mode 100644 index 00000000..8a0b282a --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradlew.bat.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradlew.bat.meta new file mode 100644 index 00000000..2f0fbc9f --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradlew.bat.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: c6779819912564720b19733b883768b3 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradlew.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradlew.meta new file mode 100644 index 00000000..34a3faff --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/gradlew.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 293a2237f004a4ad3b1a3d1fa2b2f264 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/settings.gradle b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/settings.gradle new file mode 100644 index 00000000..e7b4def4 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/settings.gradle @@ -0,0 +1 @@ +include ':app' diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/settings.gradle.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/settings.gradle.meta new file mode 100644 index 00000000..bfb286dd --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Android/simple-disk-utils/settings.gradle.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 756230ccdb0e3460ca0a0acae30d437f +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac.meta new file mode 100644 index 00000000..bcae7bd9 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f49138c4f48d542f0b9c99cf4a522cf7 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/.gitignore b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/.gitignore new file mode 100644 index 00000000..388560bd --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/.gitignore @@ -0,0 +1,55 @@ +reated by https://www.gitignore.io/api/xcode,osx + +### Xcode ### +# Xcode +# +# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore + +## Build generated +build/ +DerivedData/ + +## Various settings +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 +xcuserdata/ + +## Other +*.moved-aside +*.xccheckout +*.xcscmblueprint + + +### OSX ### +*.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils.meta new file mode 100644 index 00000000..f385ad23 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5591b32cde4ab47dd84b19c92f95f45d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.cpp b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.cpp new file mode 100644 index 00000000..f0515ebe --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.cpp @@ -0,0 +1,49 @@ +// +// diskutils.cpp +// diskutils +// +// Created by dikra-prasetya on 3/28/16. +// Copyright © 2016 dikra-prasetya. All rights reserved. +// + + +#include "diskutils.hpp" + +int getTotalDiskSpace(){ + struct statfs statf; + + statfs(".", &statf); + + char buf[12]; + sprintf(buf, "%llu", statf.f_blocks * statf.f_bsize / 1048576ULL ); + int ret; + sscanf(buf, "%d", &ret); + + return ret; +} + +int getAvailableDiskSpace(){ + struct statfs statf; + + statfs(".", &statf); + + char buf[12]; + sprintf(buf, "%llu", statf.f_bavail * statf.f_bsize /1048576ULL); + int ret; + sscanf(buf, "%d", &ret); + + return ret; +} + +int getBusyDiskSpace(){ + struct statfs statf; + + statfs(".", &statf); + + char buf[12]; + sprintf(buf, "%llu", (statf.f_blocks - statf.f_bfree) * statf.f_bsize /1048576ULL); + int ret; + sscanf(buf, "%d", &ret); + + return ret; +} \ No newline at end of file diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.cpp.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.cpp.meta new file mode 100644 index 00000000..b30db17a --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.cpp.meta @@ -0,0 +1,80 @@ +fileFormatVersion: 2 +guid: d5d9a5df0fe774cb8b93a556b4e56d3b +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + : Any + second: + enabled: 0 + settings: + Exclude Android: 1 + Exclude Editor: 0 + Exclude Linux64: 0 + Exclude OSXUniversal: 0 + Exclude Win: 0 + Exclude Win64: 0 + Exclude iOS: 1 + - first: + Android: Android + second: + enabled: 0 + settings: + CPU: ARMv7 + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 1 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: OSX + - first: + Standalone: Linux64 + second: + enabled: 1 + settings: + CPU: AnyCPU + - first: + Standalone: OSXUniversal + second: + enabled: 1 + settings: + CPU: None + - first: + Standalone: Win + second: + enabled: 1 + settings: + CPU: x86 + - first: + Standalone: Win64 + second: + enabled: 1 + settings: + CPU: x86_64 + - first: + iPhone: iOS + second: + enabled: 0 + settings: + AddToEmbeddedBinaries: false + CPU: AnyCPU + CompileFlags: + FrameworkDependencies: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.hpp b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.hpp new file mode 100644 index 00000000..ec20cdef --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.hpp @@ -0,0 +1,24 @@ +// +// diskutils.hpp +// diskutils +// +// Created by dikra-prasetya on 3/28/16. +// Copyright © 2016 dikra-prasetya. All rights reserved. +// + +#include +#include +#include +#include + +#ifndef diskutils_hpp +#define diskutils_hpp + +extern "C" { + int getTotalDiskSpace(); + int getAvailableDiskSpace(); + int getBusyDiskSpace(); +} + + +#endif /* diskutils_hpp */ diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.hpp.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.hpp.meta new file mode 100644 index 00000000..8c670387 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.hpp.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9ffff8a20b8ce4804a112ee43ffed32b +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.meta new file mode 100644 index 00000000..fa447abf --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5871ca5f331a54e149b4ab668604f719 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj.meta new file mode 100644 index 00000000..4a6e3287 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dbe60631405b0493cb21c71730f834e2 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj/project.pbxproj b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj/project.pbxproj new file mode 100644 index 00000000..b0ba9815 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj/project.pbxproj @@ -0,0 +1,260 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 8D8E8D861D0AAD160036F755 /* diskutils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8D8E8D841D0AAD160036F755 /* diskutils.cpp */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + 8D8E8D7B1D0AACFB0036F755 /* diskutils.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = diskutils.bundle; sourceTree = BUILT_PRODUCTS_DIR; }; + 8D8E8D7E1D0AACFB0036F755 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 8D8E8D841D0AAD160036F755 /* diskutils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = diskutils.cpp; sourceTree = ""; }; + 8D8E8D851D0AAD160036F755 /* diskutils.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = diskutils.hpp; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 8D8E8D781D0AACFB0036F755 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 8D8E8D721D0AACFB0036F755 = { + isa = PBXGroup; + children = ( + 8D8E8D841D0AAD160036F755 /* diskutils.cpp */, + 8D8E8D851D0AAD160036F755 /* diskutils.hpp */, + 8D8E8D7D1D0AACFB0036F755 /* diskutils */, + 8D8E8D7C1D0AACFB0036F755 /* Products */, + ); + sourceTree = ""; + }; + 8D8E8D7C1D0AACFB0036F755 /* Products */ = { + isa = PBXGroup; + children = ( + 8D8E8D7B1D0AACFB0036F755 /* diskutils.bundle */, + ); + name = Products; + sourceTree = ""; + }; + 8D8E8D7D1D0AACFB0036F755 /* diskutils */ = { + isa = PBXGroup; + children = ( + 8D8E8D7E1D0AACFB0036F755 /* Info.plist */, + ); + path = diskutils; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 8D8E8D7A1D0AACFB0036F755 /* diskutils */ = { + isa = PBXNativeTarget; + buildConfigurationList = 8D8E8D811D0AACFB0036F755 /* Build configuration list for PBXNativeTarget "diskutils" */; + buildPhases = ( + 8D8E8D771D0AACFB0036F755 /* Sources */, + 8D8E8D781D0AACFB0036F755 /* Frameworks */, + 8D8E8D791D0AACFB0036F755 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = diskutils; + productName = diskutils; + productReference = 8D8E8D7B1D0AACFB0036F755 /* diskutils.bundle */; + productType = "com.apple.product-type.bundle"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 8D8E8D731D0AACFB0036F755 /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 0730; + ORGANIZATIONNAME = "dikra-prasetya"; + TargetAttributes = { + 8D8E8D7A1D0AACFB0036F755 = { + CreatedOnToolsVersion = 7.3.1; + }; + }; + }; + buildConfigurationList = 8D8E8D761D0AACFB0036F755 /* Build configuration list for PBXProject "diskutils" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + en, + ); + mainGroup = 8D8E8D721D0AACFB0036F755; + productRefGroup = 8D8E8D7C1D0AACFB0036F755 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 8D8E8D7A1D0AACFB0036F755 /* diskutils */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 8D8E8D791D0AACFB0036F755 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 8D8E8D771D0AACFB0036F755 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 8D8E8D861D0AAD160036F755 /* diskutils.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 8D8E8D7F1D0AACFB0036F755 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = macosx; + }; + name = Debug; + }; + 8D8E8D801D0AACFB0036F755 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = macosx; + }; + name = Release; + }; + 8D8E8D821D0AACFB0036F755 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = diskutils/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; + PRODUCT_BUNDLE_IDENTIFIER = com.dikra.diskutils; + PRODUCT_NAME = "$(TARGET_NAME)"; + SKIP_INSTALL = YES; + WRAPPER_EXTENSION = bundle; + }; + name = Debug; + }; + 8D8E8D831D0AACFB0036F755 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = diskutils/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; + PRODUCT_BUNDLE_IDENTIFIER = com.dikra.diskutils; + PRODUCT_NAME = "$(TARGET_NAME)"; + SKIP_INSTALL = YES; + WRAPPER_EXTENSION = bundle; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 8D8E8D761D0AACFB0036F755 /* Build configuration list for PBXProject "diskutils" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 8D8E8D7F1D0AACFB0036F755 /* Debug */, + 8D8E8D801D0AACFB0036F755 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 8D8E8D811D0AACFB0036F755 /* Build configuration list for PBXNativeTarget "diskutils" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 8D8E8D821D0AACFB0036F755 /* Debug */, + 8D8E8D831D0AACFB0036F755 /* Release */, + ); + defaultConfigurationIsVisible = 0; + }; +/* End XCConfigurationList section */ + }; + rootObject = 8D8E8D731D0AACFB0036F755 /* Project object */; +} diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj/project.pbxproj.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj/project.pbxproj.meta new file mode 100644 index 00000000..fcd1b4b4 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj/project.pbxproj.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 718f0aee937894204b2db0a5971a1db8 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj/project.xcworkspace.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj/project.xcworkspace.meta new file mode 100644 index 00000000..03f6050c --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj/project.xcworkspace.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ead110d8567984d0c8454d7ac6d33829 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 00000000..acc50cb4 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj/project.xcworkspace/contents.xcworkspacedata.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj/project.xcworkspace/contents.xcworkspacedata.meta new file mode 100644 index 00000000..7a2d2adc --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils.xcodeproj/project.xcworkspace/contents.xcworkspacedata.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 0691745809e7e48b68fc55b050825b13 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils/Info.plist b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils/Info.plist new file mode 100644 index 00000000..e2e79722 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils/Info.plist @@ -0,0 +1,28 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + NSHumanReadableCopyright + Copyright © 2016 dikra-prasetya. All rights reserved. + NSPrincipalClass + + + diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils/Info.plist.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils/Info.plist.meta new file mode 100644 index 00000000..d0c7259a --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Mac/diskutils/diskutils/Info.plist.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9a8a90de726a64a89af7ea440098830c +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows.meta new file mode 100644 index 00000000..3283d58f --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: acc49c4abfaec4ba6af86f917eca0720 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI.meta new file mode 100644 index 00000000..f2060a50 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d0fe7a82ac85a451ca10d91dedb6a408 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/.gitignore b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/.gitignore new file mode 100644 index 00000000..3335cf8e --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/.gitignore @@ -0,0 +1,308 @@ + +# Created by https://www.gitignore.io/api/visualstudio,c++,windows + +### VisualStudio ### +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. + +# User-specific files +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +bld/ +[Bb]in/ +[Oo]bj/ +[Ll]og/ + +# Visual Studio 2015 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUNIT +*.VisualState.xml +TestResult.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# DNX +project.lock.json +artifacts/ + +*_i.c +*_p.c +*_i.h +*.ilk +*.obj +*.pch +*.pdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*.log +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# JustCode is a .NET coding add-in +.JustCode + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# TODO: Comment the next line if you want to checkin your web deploy settings +# but database connection strings (with potential passwords) will be unencrypted +*.pubxml +*.publishproj + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# NuGet Packages +*.nupkg +# The packages folder can be ignored because of Package Restore +**/packages/* +# except build/, which is used as an MSBuild target. +!**/packages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/packages/repositories.config +# NuGet v3's project.json files produces more ignoreable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directories and files +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.pfx +*.publishsettings +node_modules/ +orleans.codegen.cs + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm + +# SQL Server files +*.mdf +*.ldf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +.paket/paket.exe +paket-files/ + +# FAKE - F# Make +.fake/ + +# JetBrains Rider +.idea/ +*.sln.iml + + +### C++ ### +# Compiled Object files +*.slo +*.lo +*.o +*.obj + +# Precompiled Headers +*.gch +*.pch + +# Compiled Dynamic libraries +*.so +*.dylib +*.dll + +# Fortran module files +*.mod +*.smod + +# Compiled Static libraries +*.lai +*.la +*.a +*.lib + +# Executables +*.exe +*.out +*.app + + +### Windows ### +# Windows image file caches +Thumbs.db +ehthumbs.db + +# Folder config file +Desktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Windows Installer files +*.cab +*.msi +*.msm +*.msp + +# Windows shortcuts +*.lnk \ No newline at end of file diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI.meta new file mode 100644 index 00000000..62c9f176 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ea69133e7168d4dc88fb95be03dc3379 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI.sln b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI.sln new file mode 100644 index 00000000..644ddd37 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI.sln @@ -0,0 +1,28 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 14 +VisualStudioVersion = 14.0.24720.0 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DiskUtilsWinAPI", "DiskUtilsWinAPI\DiskUtilsWinAPI.vcxproj", "{6B8E6A90-B630-4483-90E4-D664C2089893}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {6B8E6A90-B630-4483-90E4-D664C2089893}.Debug|x64.ActiveCfg = Debug|x64 + {6B8E6A90-B630-4483-90E4-D664C2089893}.Debug|x64.Build.0 = Debug|x64 + {6B8E6A90-B630-4483-90E4-D664C2089893}.Debug|x86.ActiveCfg = Debug|Win32 + {6B8E6A90-B630-4483-90E4-D664C2089893}.Debug|x86.Build.0 = Debug|Win32 + {6B8E6A90-B630-4483-90E4-D664C2089893}.Release|x64.ActiveCfg = Release|x64 + {6B8E6A90-B630-4483-90E4-D664C2089893}.Release|x64.Build.0 = Release|x64 + {6B8E6A90-B630-4483-90E4-D664C2089893}.Release|x86.ActiveCfg = Release|Win32 + {6B8E6A90-B630-4483-90E4-D664C2089893}.Release|x86.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI.sln.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI.sln.meta new file mode 100644 index 00000000..b3259163 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI.sln.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 75c66877dac3c4c69b6bc1b2479fd287 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsAPI.cpp b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsAPI.cpp new file mode 100644 index 00000000..047a4394 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsAPI.cpp @@ -0,0 +1,90 @@ +#include "DiskUtilsAPI.h" + + + +DISKUTILS_API int getAvailableDiskSpace(char* drive) +{ + PULARGE_INTEGER _available = new ULARGE_INTEGER; + PULARGE_INTEGER _total = new ULARGE_INTEGER; + PULARGE_INTEGER _free = new ULARGE_INTEGER; + + GetDiskFreeSpaceEx(drive, _available, _total, _free); + + DWORD64 MEGA_BYTE = 1048576; + + DWORD64 free = _available->QuadPart / MEGA_BYTE; + + char s[12]; + sprintf_s(s, "%llu", free); + + int ret; + sscanf_s(s, "%d", &ret); + + delete(_available); + delete(_total); + delete(_free); + + return ret; +} + + +DISKUTILS_API int getTotalDiskSpace(char* drive) +{ + PULARGE_INTEGER _available = new ULARGE_INTEGER; + PULARGE_INTEGER _total = new ULARGE_INTEGER; + PULARGE_INTEGER _free = new ULARGE_INTEGER; + + GetDiskFreeSpaceEx(drive, _available, _total, _free); + + DWORD64 MEGA_BYTE = 1048576; + + DWORD64 total = _total->QuadPart / MEGA_BYTE; + + char s[12]; + sprintf_s(s, "%llu", total); + + int ret; + sscanf_s(s, "%d", &ret); + + delete(_available); + delete(_total); + delete(_free); + + return ret; +} + + +DISKUTILS_API int getBusyDiskSpace(char* drive) +{ + PULARGE_INTEGER _available = new ULARGE_INTEGER; + PULARGE_INTEGER _total = new ULARGE_INTEGER; + PULARGE_INTEGER _free = new ULARGE_INTEGER; + + GetDiskFreeSpaceEx(drive, _available, _total, _free); + + DWORD64 MEGA_BYTE = 1048576; + + DWORD64 busy = (_total->QuadPart - _free->QuadPart) / MEGA_BYTE; + + char s[12]; + sprintf_s(s, "%llu", busy); + + int ret; + sscanf_s(s, "%d", &ret); + + delete(_available); + delete(_total); + delete(_free); + + return ret; +} + + +DiskUtilsAPI::DiskUtilsAPI() +{ +} + + +DiskUtilsAPI::~DiskUtilsAPI() +{ +} diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsAPI.cpp.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsAPI.cpp.meta new file mode 100644 index 00000000..b053f75f --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsAPI.cpp.meta @@ -0,0 +1,80 @@ +fileFormatVersion: 2 +guid: 7e79c3ee59c62431799898217a9e8ba4 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + : Any + second: + enabled: 0 + settings: + Exclude Android: 1 + Exclude Editor: 0 + Exclude Linux64: 1 + Exclude OSXUniversal: 0 + Exclude Win: 0 + Exclude Win64: 0 + Exclude iOS: 1 + - first: + Android: Android + second: + enabled: 0 + settings: + CPU: ARMv7 + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 1 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: Windows + - first: + Standalone: Linux64 + second: + enabled: 0 + settings: + CPU: None + - first: + Standalone: OSXUniversal + second: + enabled: 1 + settings: + CPU: None + - first: + Standalone: Win + second: + enabled: 1 + settings: + CPU: x86 + - first: + Standalone: Win64 + second: + enabled: 1 + settings: + CPU: x86_64 + - first: + iPhone: iOS + second: + enabled: 0 + settings: + AddToEmbeddedBinaries: false + CPU: AnyCPU + CompileFlags: + FrameworkDependencies: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsAPI.h b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsAPI.h new file mode 100644 index 00000000..2c5eb88f --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsAPI.h @@ -0,0 +1,25 @@ +#pragma once + +#include "HardDiskManager.h" +#include +#include +using namespace std; + +#define DISKUTILS_API __declspec(dllexport) + + +extern "C" +{ + DISKUTILS_API int getAvailableDiskSpace(char* drive); + DISKUTILS_API int getTotalDiskSpace(char* drive); + DISKUTILS_API int getBusyDiskSpace(char* drive); +} + +class DiskUtilsAPI +{ +public: + DiskUtilsAPI(); + ~DiskUtilsAPI(); +}; + + diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsAPI.h.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsAPI.h.meta new file mode 100644 index 00000000..5a1026b5 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsAPI.h.meta @@ -0,0 +1,80 @@ +fileFormatVersion: 2 +guid: ff27fe18f72144e55a1fc003f175e3a9 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + : Any + second: + enabled: 0 + settings: + Exclude Android: 1 + Exclude Editor: 0 + Exclude Linux64: 0 + Exclude OSXUniversal: 0 + Exclude Win: 0 + Exclude Win64: 0 + Exclude iOS: 1 + - first: + Android: Android + second: + enabled: 0 + settings: + CPU: ARMv7 + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 1 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: Windows + - first: + Standalone: Linux64 + second: + enabled: 1 + settings: + CPU: None + - first: + Standalone: OSXUniversal + second: + enabled: 1 + settings: + CPU: None + - first: + Standalone: Win + second: + enabled: 1 + settings: + CPU: x86 + - first: + Standalone: Win64 + second: + enabled: 1 + settings: + CPU: x86_64 + - first: + iPhone: iOS + second: + enabled: 0 + settings: + AddToEmbeddedBinaries: false + CPU: AnyCPU + CompileFlags: + FrameworkDependencies: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsWinAPI.vcxproj b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsWinAPI.vcxproj new file mode 100644 index 00000000..01350262 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsWinAPI.vcxproj @@ -0,0 +1,123 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + {6B8E6A90-B630-4483-90E4-D664C2089893} + DiskUtilsWinAPI + 8.1 + + + + DynamicLibrary + true + v140 + MultiByte + + + DynamicLibrary + false + v140 + true + MultiByte + + + Application + true + v140 + MultiByte + + + DynamicLibrary + false + v140 + true + MultiByte + + + + + + + + + + + + + + + + + + + + + + + Level3 + Disabled + true + + + + + Level3 + Disabled + true + + + + + Level3 + MaxSpeed + true + true + true + + + true + true + + + + + Level3 + MaxSpeed + true + true + true + + + true + true + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsWinAPI.vcxproj.filters b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsWinAPI.vcxproj.filters new file mode 100644 index 00000000..8863755c --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsWinAPI.vcxproj.filters @@ -0,0 +1,33 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + \ No newline at end of file diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsWinAPI.vcxproj.filters.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsWinAPI.vcxproj.filters.meta new file mode 100644 index 00000000..57845238 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsWinAPI.vcxproj.filters.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 445608599346b4812aea57e094251a73 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsWinAPI.vcxproj.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsWinAPI.vcxproj.meta new file mode 100644 index 00000000..f29e8b4a --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/DiskUtilsWinAPI.vcxproj.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 0b5a050eb851e4669b1890431bcc8eb6 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/HardDiskManager.cpp b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/HardDiskManager.cpp new file mode 100644 index 00000000..7aba44c9 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/HardDiskManager.cpp @@ -0,0 +1,65 @@ +// HardDiskManager.cpp: implementation of the CHardDiskManager class. +// LICENSE: http://www.codeproject.com/info/cpol10.aspx +////////////////////////////////////////////////////////////////////// + +#include "HardDiskManager.h" + +////////////////////////////////////////////////////////////////////// +// Construction/Destruction +////////////////////////////////////////////////////////////////////// + +CHardDiskManager::CHardDiskManager() +{ + // bytes available to caller + m_uliFreeBytesAvailable.QuadPart = 0L; + // bytes on disk + m_uliTotalNumberOfBytes.QuadPart = 0L; + // free bytes on disk + m_uliTotalNumberOfFreeBytes.QuadPart = 0L; +} + +CHardDiskManager::~CHardDiskManager() +{ +} + +bool CHardDiskManager::CheckFreeSpace(LPCTSTR lpDirectoryName) +{ + if( !GetDiskFreeSpaceEx( + lpDirectoryName, // directory name + &m_uliFreeBytesAvailable, // bytes available to caller + &m_uliTotalNumberOfBytes, // bytes on disk + &m_uliTotalNumberOfFreeBytes) ) // free bytes on disk + return false; + + return true; +} + +DWORD64 CHardDiskManager::GetFreeBytesAvailable(void) +{ + return m_uliFreeBytesAvailable.QuadPart; +} + +DWORD64 CHardDiskManager::GetTotalNumberOfBytes(void) +{ + return m_uliTotalNumberOfBytes.QuadPart; +} + +DWORD64 CHardDiskManager::GetTotalNumberOfFreeBytes(void) +{ + return m_uliTotalNumberOfFreeBytes.QuadPart; +} + +double CHardDiskManager::GetFreeGBytesAvailable(void) +{ + return (double)( (signed __int64)(m_uliFreeBytesAvailable.QuadPart)/1.0e9 ); +} + +double CHardDiskManager::GetTotalNumberOfGBytes(void) +{ + return (double)( (signed __int64)(m_uliTotalNumberOfBytes.QuadPart)/1.0e9 ); +} + +double CHardDiskManager::GetTotalNumberOfFreeGBytes(void) +{ + return (double)( (signed __int64)(m_uliTotalNumberOfFreeBytes.QuadPart)/1.0e9 ); +} diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/HardDiskManager.cpp.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/HardDiskManager.cpp.meta new file mode 100644 index 00000000..6ac6dad7 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/HardDiskManager.cpp.meta @@ -0,0 +1,80 @@ +fileFormatVersion: 2 +guid: 3856d50385f4e4507a2c95c2dd590516 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + : Any + second: + enabled: 0 + settings: + Exclude Android: 1 + Exclude Editor: 0 + Exclude Linux64: 0 + Exclude OSXUniversal: 0 + Exclude Win: 0 + Exclude Win64: 0 + Exclude iOS: 1 + - first: + Android: Android + second: + enabled: 0 + settings: + CPU: ARMv7 + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 1 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: Windows + - first: + Standalone: Linux64 + second: + enabled: 1 + settings: + CPU: None + - first: + Standalone: OSXUniversal + second: + enabled: 1 + settings: + CPU: None + - first: + Standalone: Win + second: + enabled: 1 + settings: + CPU: x86 + - first: + Standalone: Win64 + second: + enabled: 1 + settings: + CPU: x86_64 + - first: + iPhone: iOS + second: + enabled: 0 + settings: + AddToEmbeddedBinaries: false + CPU: AnyCPU + CompileFlags: + FrameworkDependencies: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/HardDiskManager.h b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/HardDiskManager.h new file mode 100644 index 00000000..4e3ca584 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/HardDiskManager.h @@ -0,0 +1,36 @@ +// HardDiskManager.h: interface for the CHardDiskManager class. +// LICENSE: http://www.codeproject.com/info/cpol10.aspx +////////////////////////////////////////////////////////////////////// + +#if !defined(AFX_HARDDISKMANAGER_H__27F8E542_FA4A_43FF_B29D_59BCD13E31C3__INCLUDED_) +#define AFX_HARDDISKMANAGER_H__27F8E542_FA4A_43FF_B29D_59BCD13E31C3__INCLUDED_ + +#if _MSC_VER > 1000 +#pragma once +#endif // _MSC_VER > 1000 + +#include + +class CHardDiskManager +{ +public: + CHardDiskManager(); + virtual ~CHardDiskManager(); + + bool CheckFreeSpace(LPCTSTR lpDirectoryName); + + DWORD64 GetFreeBytesAvailable(void); + DWORD64 GetTotalNumberOfBytes(void); + DWORD64 GetTotalNumberOfFreeBytes(void); + + double GetFreeGBytesAvailable(void); + double GetTotalNumberOfGBytes(void); + double GetTotalNumberOfFreeGBytes(void); + +private: + ULARGE_INTEGER m_uliFreeBytesAvailable; // bytes disponiveis no disco associado a thread de chamada + ULARGE_INTEGER m_uliTotalNumberOfBytes; // bytes no disco + ULARGE_INTEGER m_uliTotalNumberOfFreeBytes; // bytes livres no disco +}; + +#endif // !defined(AFX_HARDDISKMANAGER_H__27F8E542_FA4A_43FF_B29D_59BCD13E31C3__INCLUDED_) diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/HardDiskManager.h.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/HardDiskManager.h.meta new file mode 100644 index 00000000..ccbb7565 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/Windows/DiskUtilsWinAPI/DiskUtilsWinAPI/HardDiskManager.h.meta @@ -0,0 +1,80 @@ +fileFormatVersion: 2 +guid: c4bc784ce5a5e4a05bb5bae6bbd9119b +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + : Any + second: + enabled: 0 + settings: + Exclude Android: 1 + Exclude Editor: 0 + Exclude Linux64: 0 + Exclude OSXUniversal: 0 + Exclude Win: 0 + Exclude Win64: 0 + Exclude iOS: 1 + - first: + Android: Android + second: + enabled: 0 + settings: + CPU: ARMv7 + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 1 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: Windows + - first: + Standalone: Linux64 + second: + enabled: 1 + settings: + CPU: None + - first: + Standalone: OSXUniversal + second: + enabled: 1 + settings: + CPU: None + - first: + Standalone: Win + second: + enabled: 1 + settings: + CPU: x86 + - first: + Standalone: Win64 + second: + enabled: 1 + settings: + CPU: x86_64 + - first: + iPhone: iOS + second: + enabled: 0 + settings: + AddToEmbeddedBinaries: false + CPU: AnyCPU + CompileFlags: + FrameworkDependencies: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/iOS.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/iOS.meta new file mode 100644 index 00000000..9eeff57f --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/iOS.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 280958f78e3cc4c5ab25763150680c32 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/iOS/DiskUtils.mm b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/iOS/DiskUtils.mm new file mode 100644 index 00000000..b3523246 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/iOS/DiskUtils.mm @@ -0,0 +1,68 @@ +extern "C" +{ + uint64_t getAvailableDiskSpace () { + uint64_t totalFreeSpace = 0; + if (@available(iOS 11.0, *)) { + NSURL *fileURL = [[NSURL alloc] initFileURLWithPath:NSHomeDirectory()]; + NSError *error = nil; + NSDictionary *results = [fileURL resourceValuesForKeys:@[NSURLVolumeAvailableCapacityForImportantUsageKey] error:&error]; + if (!results) { + NSLog(@"Error Obtaining System Memory Info: Domain = %@, Code = %ld", [error domain], (long)[error code]); + } else { + NSLog(@"Available capacity for important usage: %@", results[NSURLVolumeAvailableCapacityForImportantUsageKey]); + totalFreeSpace = ((NSString *)results[NSURLVolumeAvailableCapacityForImportantUsageKey]).longLongValue; + } + } else { + NSError *error = nil; + NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); + NSDictionary *dictionary = [[NSFileManager defaultManager] attributesOfFileSystemForPath:[paths lastObject] error: &error]; + + if (dictionary) { + NSNumber *fileSystemSizeInBytes = [dictionary objectForKey: NSFileSystemSize]; + NSNumber *freeFileSystemSizeInBytes = [dictionary objectForKey:NSFileSystemFreeSize]; + totalFreeSpace = [freeFileSystemSizeInBytes unsignedLongLongValue]; + } else { + NSLog(@"Error Obtaining System Memory Info: Domain = %@, Code = %ld", [error domain], (long)[error code]); + } + + } + return (uint64_t)(totalFreeSpace/1024ll)/1024ll; + } + + uint64_t getTotalDiskSpace (){ + uint64_t totalSpace = 0; + NSError *error = nil; + NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); + NSDictionary *dictionary = [[NSFileManager defaultManager] attributesOfFileSystemForPath:[paths lastObject] error: &error]; + + if (dictionary) { + NSNumber *fileSystemSizeInBytes = [dictionary objectForKey: NSFileSystemSize]; + NSNumber *freeFileSystemSizeInBytes = [dictionary objectForKey:NSFileSystemFreeSize]; + totalSpace = [fileSystemSizeInBytes unsignedLongLongValue]; + } else { + NSLog(@"Error Obtaining System Memory Info: Domain = %@, Code = %ld", [error domain], (long)[error code]); + } + + return (uint64_t)(totalSpace/1024ll)/1024ll; + } + + uint64_t getBusyDiskSpace (){ + uint64_t totalSpace = 0; + uint64_t totalFreeSpace = 0; + NSError *error = nil; + NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); + NSDictionary *dictionary = [[NSFileManager defaultManager] attributesOfFileSystemForPath:[paths lastObject] error: &error]; + + if (dictionary) { + NSNumber *fileSystemSizeInBytes = [dictionary objectForKey: NSFileSystemSize]; + NSNumber *freeFileSystemSizeInBytes = [dictionary objectForKey:NSFileSystemFreeSize]; + totalSpace = [fileSystemSizeInBytes unsignedLongLongValue]; + totalFreeSpace = [freeFileSystemSizeInBytes unsignedLongLongValue]; + } else { + NSLog(@"Error Obtaining System Memory Info: Domain = %@, Code = %ld", [error domain], (long)[error code]); + } + + return (uint64_t)((totalSpace-totalFreeSpace)/1024ll)/1024ll; + } +} + diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/iOS/DiskUtils.mm.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/iOS/DiskUtils.mm.meta new file mode 100644 index 00000000..d3868341 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Native~/iOS/DiskUtils.mm.meta @@ -0,0 +1,37 @@ +fileFormatVersion: 2 +guid: 7b9ecc359edf848a09d4a15808fb071c +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + DefaultValueInitialized: true + - first: + iPhone: iOS + second: + enabled: 1 + settings: {} + - first: + tvOS: tvOS + second: + enabled: 1 + settings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/README.md b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/README.md new file mode 100644 index 00000000..1097a9dc --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/README.md @@ -0,0 +1,62 @@ +This library is maintained by Active Theory Inc. + +This is a fork of the `simple-disk-utils` asset by M Dikra Prasetya, Available on Unity Asset Store: http://u3d.as/qF1. + +# simple-disk-utils +Disk/storage capacity check helper methods for Windows, OSX, iOS, and Android platform. + +Simply checks available, busy, and total storage space of your platform. File managing functions like save and delete to text or binary file with special cases handling are also provided. + +The implementation for each platforms are also can be found in this repository. + +If you have any idea on improvement or anything, please feel free to contribute! + +## Implemented Methods +``` + +/////////////////////////////////////////////////////////////////////// +/// For all platforms. These methods return space size in Mega Bytes. + +int CheckAvailableSpace(); +int CheckBusySpace(); +int CheckTotalSpace(); + +/////////////////////////////////////////////////////////////////////// +/// Additional space check methods for Android +/// The default storage for Android, the one that is usually used when saving file, etc., is External. + +int CheckAvailableSpace(bool isExternalStorage = true); +int CheckBusySpace(bool isExternalStorage = true); +int CheckTotalSpace(bool isExternalStorage = true); + +/////////////////////////////////////////////////////////////////////// +/// Additional methods for Windows + +int CheckAvailableSpace(string drive = “C:/“); +int CheckBusySpace(string drive = “C:/“); +int CheckTotalSpace(string drive = “C:/“); +string[] GetDriveNames(); + +/////////////////////////////////////////////////////////////////////// +/// File helper. Handled directory availability check, iOS special case on deleting files, etc. + +void DeleteFile (string filePath); +void SaveFile (object obj, string filePath); +void SaveFile (object obj, string dirPath, string fileName); +void SaveTextFile (string str, string filePath); +void SaveTextFile (string str, string dirPath, string fileName); +string LoadTextFile (string filePath); +byte[] ObjectToByteArray (object obj); +T ByteArrayToObject (byte[] bytes); +``` + +If the definitions are not clear enough, please see the included sample scene in the project. + +## Notes +1. Tested on Windows, OSX, iOS, and Android platform. +2. Implemented file handling methods are not including methods that are already covered in standard library (most likely on System.IO). + + +## License + +MIT. diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/README.md.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/README.md.meta new file mode 100644 index 00000000..55de1fd8 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/README.md.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9f8e97e2c5eff4d60946506f4732dd8a +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime.meta new file mode 100644 index 00000000..49ccba62 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0573a113f43804a82883a8a2a8c0cbd5 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/Android.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/Android.meta new file mode 100644 index 00000000..7f210647 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/Android.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 38ed00fb7ab6b41df8addcd46dde08aa +folderAsset: yes +timeCreated: 1458809122 +licenseType: Free +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/Android/DiskUtils.java b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/Android/DiskUtils.java new file mode 100644 index 00000000..15938758 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/Android/DiskUtils.java @@ -0,0 +1,136 @@ +package com.activetheoryinc.diskutils; + +/** + * Created by dikra-prasetya on 4/1/16. + */ + + +import android.os.Build; +import android.os.Environment; +import android.os.StatFs; +import java.math.BigInteger; + + +public class DiskUtils { + private static final long MEGA_BYTE = 1048576; + + /** + * Calculates total space on disk. + * @param external Queries external disk if true, queries internal disk otherwise. + * @return Total disk space in MB. + */ + public static int totalSpace(boolean external) + { + long totalBlocks; + long blockSize; + + StatFs statFs = getStats(external); + if (Build.VERSION.SDK_INT < 18){ + totalBlocks = statFs.getBlockCount(); + blockSize = statFs.getBlockSize(); + } + else + { + totalBlocks = statFs.getBlockCountLong(); + blockSize = statFs.getBlockSizeLong(); + } + + BigInteger total = BigInteger.valueOf(totalBlocks).multiply(BigInteger.valueOf(blockSize)).divide(BigInteger.valueOf(MEGA_BYTE)); + + return total.intValue(); + } + + /** + * Calculates available space on disk. + * @param path Gets the disk that contains the path, queries the internal disk if this is null or empty + * @return Available disk space in MB. + */ + public static int availableSpace(String path) + { + if (path == null || path.isEmpty()) { + path = Environment.getRootDirectory().getAbsolutePath(); + } + + long totalBlocks; + long blockSize; + + StatFs statFs = new StatFs(path); + if (Build.VERSION.SDK_INT < 18) { + totalBlocks = statFs.getAvailableBlocks(); + blockSize = statFs.getBlockSize(); + } else { + totalBlocks = statFs.getAvailableBlocksLong(); + blockSize = statFs.getBlockSizeLong(); + } + BigInteger total = BigInteger.valueOf(totalBlocks).multiply(BigInteger.valueOf(blockSize)).divide(BigInteger.valueOf(MEGA_BYTE)); + + return total.intValue(); + } + /** + * Calculates available space on disk. + * @param external Queries external disk if true, queries internal disk otherwise. + * @return Available disk space in MB. + */ + public static int availableSpace(boolean external) + { + long availableBlocks; + long blockSize; + + StatFs statFs = getStats(external); + if (Build.VERSION.SDK_INT < 18){ + availableBlocks = statFs.getAvailableBlocks(); + blockSize = statFs.getBlockSize(); + } + else + { + availableBlocks = statFs.getAvailableBlocksLong(); + blockSize = statFs.getBlockSizeLong(); + } + + BigInteger free = BigInteger.valueOf(availableBlocks).multiply(BigInteger.valueOf(blockSize)).divide(BigInteger.valueOf(MEGA_BYTE)); + + return free.intValue(); + } + + /** + * Calculates busy space on disk. + * @param external Queries external disk if true, queries internal disk otherwise. + * @return Busy disk space in MB. + */ + public static int busySpace(boolean external) + { + BigInteger total; + BigInteger free; + + StatFs statFs = getStats(external); + + if (Build.VERSION.SDK_INT < 18){ + total = BigInteger.valueOf(statFs.getBlockCount()).multiply(BigInteger.valueOf(statFs.getBlockSize())); + free = BigInteger.valueOf(statFs.getFreeBlocks()).multiply(BigInteger.valueOf(statFs.getBlockSize())); + } + else + { + total = BigInteger.valueOf(statFs.getBlockCountLong()).multiply(BigInteger.valueOf(statFs.getBlockSizeLong())); + free = BigInteger.valueOf(statFs.getFreeBlocksLong()).multiply(BigInteger.valueOf(statFs.getBlockSizeLong())); + } + + BigInteger ret = total.subtract(free).divide(BigInteger.valueOf(MEGA_BYTE)); + + return ret.intValue(); + } + + private static StatFs getStats(boolean external){ + String path; + + if (external){ + path = Environment.getExternalStorageDirectory().getAbsolutePath(); + } + else{ + path = Environment.getRootDirectory().getAbsolutePath(); + } + + return new StatFs(path); + } + +} + diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/Android/DiskUtils.java.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/Android/DiskUtils.java.meta new file mode 100644 index 00000000..77459f9b --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/Android/DiskUtils.java.meta @@ -0,0 +1,32 @@ +fileFormatVersion: 2 +guid: 57473bb44761c4eab8b10d7262546a50 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Android: Android + second: + enabled: 1 + settings: {} + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + DefaultValueInitialized: true + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/DiskUtils.asmdef b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/DiskUtils.asmdef new file mode 100644 index 00000000..6ba904cf --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/DiskUtils.asmdef @@ -0,0 +1,3 @@ +{ + "name": "DiskUtils" +} diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/DiskUtils.asmdef.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/DiskUtils.asmdef.meta new file mode 100644 index 00000000..fe8b2a56 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/DiskUtils.asmdef.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: bcd02d5781d1e4f13a52b4c351be62d5 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/DiskUtils.cs b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/DiskUtils.cs new file mode 100644 index 00000000..71807d69 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/DiskUtils.cs @@ -0,0 +1,437 @@ +/* + +Class: DiskUtils.cs +============================================== +Last update: 2022-08-24 (by keerthiko) +============================================== + +Copyright (c) 2016 M Dikra Prasetya + + * MIT LICENSE + * + * Permission is hereby granted, free of charge, to any person obtaining + * a copy of this software and associated documentation files (the + * "Software"), to deal in the Software without restriction, including + * without limitation the rights to use, copy, modify, merge, publish, + * distribute, sublicense, and/or sell copies of the Software, and to + * permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY + * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE + * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +*/ + +using System; +using System.Runtime.InteropServices; +using System.IO; +using System.Runtime.Serialization.Formatters.Binary; +using System.Text; +using UnityEngine; + +namespace SimpleDiskUtils +{ + + public class DiskUtils + { + #region DISK_TOOLS + +#if UNITY_STANDALONE || UNITY_EDITOR + +#if UNITY_STANDALONE_OSX || UNITY_EDITOR_OSX + [DllImport ("diskutils")] + private static extern int getAvailableDiskSpace (); + + [DllImport ("diskutils")] + private static extern int getTotalDiskSpace (); + + [DllImport ("diskutils")] + private static extern int getBusyDiskSpace (); + + /// + /// Checks the available space. + /// + /// The available space in MB. + public static int CheckAvailableSpace () + { + return DiskUtils.getAvailableDiskSpace (); + } + + /// + /// Checks the total space. + /// + /// The total space in MB. + public static int CheckTotalSpace () + { + return DiskUtils.getTotalDiskSpace (); + } + + /// + /// Checks the busy space. + /// + /// The busy space in MB. + public static int CheckBusySpace () + { + return DiskUtils.getBusyDiskSpace (); + } + + +#elif UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN + [DllImport("DiskUtilsWinAPI")] + private static extern int getAvailableDiskSpace(StringBuilder drive); + + [DllImport("DiskUtilsWinAPI")] + private static extern int getTotalDiskSpace(StringBuilder drive); + + [DllImport("DiskUtilsWinAPI")] + private static extern int getBusyDiskSpace(StringBuilder drive); + + private const string DEFAULT_DRIVE = "C:/"; + + /// + /// Checks the available space. + /// + /// The available spaces in MB. + /// Disk name. For example, "C:/" + public static int CheckAvailableSpace(string drive = DEFAULT_DRIVE) + { + return DiskUtils.getAvailableDiskSpace(new StringBuilder(drive)); + } + + /// + /// Checks the total space. + /// + /// The total space in MB. + /// Disk name. For example, "C:/" + public static int CheckTotalSpace(string drive = DEFAULT_DRIVE) + { + return DiskUtils.getTotalDiskSpace(new StringBuilder(drive)); + } + + /// + /// Checks the busy space. + /// + /// The busy space in MB. + /// Disk name. For example, "C:/" + public static int CheckBusySpace(string drive = DEFAULT_DRIVE) + { + return DiskUtils.getBusyDiskSpace(new StringBuilder(drive)); + } + + public static string[] GetDriveNames() + { + return Directory.GetLogicalDrives(); + } + +#else + + private const long MEGA_BYTE = 1048576; + private const string DEFAULT_DRIVE = "/"; + + /// + /// Checks the available space. + /// + /// The available space in MB. + public static int CheckAvailableSpace(){ + DriveInfo drive = GetDrive (DEFAULT_DRIVE); + if (drive == null) + return -1; + return int.Parse((drive.AvailableFreeSpace / MEGA_BYTE).ToString()); + } + + /// + /// Checks the total space. + /// + /// The total space in MB. + public static int CheckTotalSpace(){ + DriveInfo drive = GetDrive (DEFAULT_DRIVE); + if (drive == null) + return -1; + return int.Parse ((drive.TotalSize / MEGA_BYTE).ToString()); + } + + /// + /// Checks the busy space. + /// + /// The busy space in MB. + public static int CheckBusySpace(){ + DriveInfo drive = GetDrive (DEFAULT_DRIVE); + if (drive == null) + return -1; + + return int.Parse (((drive.TotalSize - drive.AvailableFreeSpace) / MEGA_BYTE).ToString()); + } + +#endif + +#elif UNITY_ANDROID + private const string package_domain = "com.activetheoryinc.diskutils"; + // private const string package_domain = "com.dikra.diskutils"; + /// + /// Checks the available space. + /// + /// The available space in MB. + /// Finds the space remaining in the disk which this path leads to. Default is internal storage + public static int CheckAvailableSpace(string path){ + AndroidJavaClass dataUtils = new AndroidJavaClass ($"{package_domain}.DiskUtils"); + return dataUtils.CallStatic("availableSpace", path); + } + + + /// + /// Checks the available space. + /// + /// The available space in MB. + /// If set to true is external storage. + public static int CheckAvailableSpace(bool isExternalStorage = true){ + AndroidJavaClass dataUtils = new AndroidJavaClass ($"{package_domain}.DiskUtils"); + return dataUtils.CallStatic("availableSpace", isExternalStorage); + } + + /// + /// Checks the total space. + /// + /// The total space in MB. + /// If set to true is external storage. + public static int CheckTotalSpace(bool isExternalStorage = true){ + AndroidJavaClass dataUtils = new AndroidJavaClass ($"{package_domain}.DiskUtils"); + return dataUtils.CallStatic("totalSpace", isExternalStorage); + } + + /// + /// Checks the busy space. + /// + /// The busy space in MB. + /// If set to true is external storage. + public static int CheckBusySpace(bool isExternalStorage = true){ + AndroidJavaClass dataUtils = new AndroidJavaClass ($"{package_domain}.DiskUtils"); + return dataUtils.CallStatic("busySpace", isExternalStorage); + } + + +#elif UNITY_IOS + + [DllImport ("__Internal")] + private static extern ulong getAvailableDiskSpace(); + [DllImport ("__Internal")] + private static extern ulong getTotalDiskSpace(); + [DllImport ("__Internal")] + private static extern ulong getBusyDiskSpace(); + + /// + /// Checks the available space. + /// + /// The available space in MB. + public static int CheckAvailableSpace(){ + ulong ret = DiskUtils.getAvailableDiskSpace(); + return int.Parse(ret.ToString()); + } + + /// + /// Checks the total space. + /// + /// The total space in MB. + public static int CheckTotalSpace(){ + ulong ret = DiskUtils.getTotalDiskSpace(); + return int.Parse(ret.ToString()); + } + + /// + /// Checks the busy space. + /// + /// The busy space in MB. + public static int CheckBusySpace(){ + ulong ret = DiskUtils.getBusyDiskSpace(); + return int.Parse(ret.ToString()); + } +#endif + + #endregion + + #region FILE_TOOLS + + /// + /// Deletes the file. + /// + /// File path. + public static void DeleteFile (string filePath) + { + #if UNITY_IOS + if (!filePath.StartsWith("/private")) + filePath = "/private" + filePath; + #endif + + if (File.Exists (filePath)) + File.Delete (filePath); + } + + /// + /// Saves object to file. + /// + /// Object. + /// File path. + public static void SaveFile (object obj, string filePath) + { + if (!obj.GetType ().IsSerializable) { + throw new ArgumentException ("Passed data is invalid: not serializable.", "obj"); + } + + int i = filePath.Length; + while (i > 0 && filePath [i - 1] != '/') + --i; + + if (i <= 0) + SaveFile (obj, "", filePath); + else + SaveFile (obj, filePath.Substring (0, i), filePath.Substring (i)); + } + + /// + /// Saves object to file. + /// + /// Serializable Object. + /// Directory path. + /// File name. + public static void SaveFile (object obj, string dirPath, string fileName) + { + if (!obj.GetType ().IsSerializable) { + throw new ArgumentException ("Passed data is invalid: not serializable.", "obj"); + } + + string filePath; + + if (dirPath == "") { + filePath = fileName; + } else { + if (dirPath.EndsWith ("/")) + filePath = dirPath + fileName; + else + filePath = dirPath + "/" + fileName; + + if (!Directory.Exists (dirPath)) + Directory.CreateDirectory (dirPath); + } + + File.WriteAllBytes (filePath, ObjectToByteArray (obj)); + } + + /// + /// Loads the file. + /// + /// The file. + /// File path. + /// Return type of the loaded object. + public static T LoadFile (string filePath) + { + if (File.Exists (filePath)) { + return ByteArrayToObject (File.ReadAllBytes (filePath)); + } else { + return default(T); + } + } + + /// + /// Saves a string to text file. + /// + /// String. + /// File path. + public static void SaveTextFile (string str, string filePath) + { + int i = filePath.Length; + while (i > 0 && filePath [i - 1] != '/') + --i; + + if (i <= 0) + SaveTextFile (str, "", filePath); + else + SaveTextFile (str, filePath.Substring (0, i), filePath.Substring (i)); + } + + /// + /// Saves a string to text file. + /// + /// String. + /// Directory path. + /// File name. + public static void SaveTextFile (string str, string dirPath, string fileName) + { + string filePath; + + if (dirPath == "") { + filePath = fileName; + } else { + if (dirPath.EndsWith ("/")) + filePath = dirPath + fileName; + else + filePath = dirPath + "/" + fileName; + + if (!Directory.Exists (dirPath)) + Directory.CreateDirectory (dirPath); + } + + + StreamWriter sw = new StreamWriter (filePath); + sw.WriteLine (str); + sw.Close (); + } + + /// + /// Loads the file. + /// + /// The file. + /// File path. + /// Return type of the loaded object. + public static string LoadTextFile (string filePath) + { + if (File.Exists (filePath)) { + StreamReader sr = new StreamReader (filePath); + string str = sr.ReadToEnd (); + sr.Close (); + return str; + } else { + return null; + } + } + + + public static byte[] ObjectToByteArray (object obj) + { + if (obj == null) + return null; + + if (obj is byte[]) + return (byte[])obj; + + BinaryFormatter bf = new BinaryFormatter (); + using (MemoryStream ms = new MemoryStream ()) { + bf.Serialize (ms, obj); + byte[] bytes = ms.ToArray (); + ms.Close (); + return bytes; + } + } + + public static T ByteArrayToObject (byte[] bytes) + { + using (MemoryStream memStream = new MemoryStream ()) { + BinaryFormatter bf = new BinaryFormatter (); + memStream.Write (bytes, 0, bytes.Length); + memStream.Seek (0, SeekOrigin.Begin); + T obj = (T)bf.Deserialize (memStream); + memStream.Close (); + return obj; + } + } + + #endregion + } + +} \ No newline at end of file diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/DiskUtils.cs.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/DiskUtils.cs.meta new file mode 100644 index 00000000..b9b83eef --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/DiskUtils.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 2d00e766200314a0797180e9ac528644 +timeCreated: 1459149326 +licenseType: Free +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle.meta new file mode 100644 index 00000000..1fbaa0e3 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle.meta @@ -0,0 +1,64 @@ +fileFormatVersion: 2 +guid: 2938277d748c74389a227118f03785ae +folderAsset: yes +timeCreated: 1459136743 +licenseType: Free +PluginImporter: + serializedVersion: 1 + iconMap: {} + executionOrder: {} + isPreloaded: 0 + platformData: + Android: + enabled: 0 + settings: + CPU: AnyCPU + Any: + enabled: 0 + settings: {} + Editor: + enabled: 1 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: OSX + Linux: + enabled: 1 + settings: + CPU: x86 + Linux64: + enabled: 1 + settings: + CPU: x86_64 + LinuxUniversal: + enabled: 1 + settings: + CPU: AnyCPU + OSXIntel: + enabled: 1 + settings: + CPU: AnyCPU + OSXIntel64: + enabled: 1 + settings: + CPU: AnyCPU + OSXUniversal: + enabled: 1 + settings: + CPU: AnyCPU + Win: + enabled: 1 + settings: + CPU: AnyCPU + Win64: + enabled: 1 + settings: + CPU: AnyCPU + iOS: + enabled: 0 + settings: + CompileFlags: + FrameworkDependencies: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents.meta new file mode 100644 index 00000000..5a3dfd77 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: d4e19f99e5c05421da13163e0489947b +folderAsset: yes +timeCreated: 1459136743 +licenseType: Free +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/Info.plist b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/Info.plist new file mode 100644 index 00000000..0f5192ae --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/Info.plist @@ -0,0 +1,50 @@ + + + + + BuildMachineOSBuild + 22E261 + CFBundleDevelopmentRegion + en + CFBundleExecutable + diskutils + CFBundleIdentifier + com.dikra.diskutils + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + diskutils + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleSupportedPlatforms + + MacOSX + + CFBundleVersion + 1 + DTCompiler + com.apple.compilers.llvm.clang.1_0 + DTPlatformBuild + + DTPlatformName + macosx + DTPlatformVersion + 13.3 + DTSDKBuild + 22E245 + DTSDKName + macosx13.3 + DTXcode + 1430 + DTXcodeBuild + 14E222b + LSMinimumSystemVersion + 10.11 + NSHumanReadableCopyright + Copyright © 2016 dikra-prasetya. All rights reserved. + + diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/Info.plist.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/Info.plist.meta new file mode 100644 index 00000000..a72d6886 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/Info.plist.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8d33101928e944c488fd2d265a59831b +timeCreated: 1465546294 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/MacOS.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/MacOS.meta new file mode 100644 index 00000000..e2f8aea0 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/MacOS.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: e2674c8f80a5d4c4ab8347f734e24772 +folderAsset: yes +timeCreated: 1459136743 +licenseType: Free +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/MacOS/diskutils b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/MacOS/diskutils new file mode 100644 index 00000000..4eea62c0 Binary files /dev/null and b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/MacOS/diskutils differ diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/MacOS/diskutils.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/MacOS/diskutils.meta new file mode 100644 index 00000000..d48ebc68 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/MacOS/diskutils.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7cf3ca26bda78415896c2ad3f3e27679 +timeCreated: 1465549853 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/_CodeSignature.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/_CodeSignature.meta new file mode 100644 index 00000000..2df5515a --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/_CodeSignature.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 87abbe268d5774b72a76fc6b7da1d08f +folderAsset: yes +timeCreated: 1459136743 +licenseType: Free +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/_CodeSignature/CodeResources b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/_CodeSignature/CodeResources new file mode 100644 index 00000000..d5d0fd74 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/_CodeSignature/CodeResources @@ -0,0 +1,115 @@ + + + + + files + + files2 + + rules + + ^Resources/ + + ^Resources/.*\.lproj/ + + optional + + weight + 1000 + + ^Resources/.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Resources/Base\.lproj/ + + weight + 1010 + + ^version.plist$ + + + rules2 + + .*\.dSYM($|/) + + weight + 11 + + ^(.*/)?\.DS_Store$ + + omit + + weight + 2000 + + ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/ + + nested + + weight + 10 + + ^.* + + ^Info\.plist$ + + omit + + weight + 20 + + ^PkgInfo$ + + omit + + weight + 20 + + ^Resources/ + + weight + 20 + + ^Resources/.*\.lproj/ + + optional + + weight + 1000 + + ^Resources/.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Resources/Base\.lproj/ + + weight + 1010 + + ^[^/]+$ + + nested + + weight + 10 + + ^embedded\.provisionprofile$ + + weight + 20 + + ^version\.plist$ + + weight + 20 + + + + diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/_CodeSignature/CodeResources.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/_CodeSignature/CodeResources.meta new file mode 100644 index 00000000..50e499ff --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/diskutils.bundle/Contents/_CodeSignature/CodeResources.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f842470912d1c4049901cffbe1f618aa +timeCreated: 1465549853 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/iOS.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/iOS.meta new file mode 100644 index 00000000..62397484 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/iOS.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 1e07b0520068548d5bfe50789624df74 +folderAsset: yes +timeCreated: 1458815165 +licenseType: Free +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/iOS/DiskUtils.mm b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/iOS/DiskUtils.mm new file mode 100644 index 00000000..e28f690e --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/iOS/DiskUtils.mm @@ -0,0 +1,56 @@ +extern "C" +{ + uint64_t getAvailableDiskSpace (){ + uint64_t totalFreeSpace = 0; + NSError *error = nil; + NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); + NSDictionary *dictionary = [[NSFileManager defaultManager] attributesOfFileSystemForPath:[paths lastObject] error: &error]; + + if (dictionary) { + NSNumber *fileSystemSizeInBytes = [dictionary objectForKey: NSFileSystemSize]; + NSNumber *freeFileSystemSizeInBytes = [dictionary objectForKey:NSFileSystemFreeSize]; + totalFreeSpace = [freeFileSystemSizeInBytes unsignedLongLongValue]; + } else { + NSLog(@"Error Obtaining System Memory Info: Domain = %@, Code = %ld", [error domain], (long)[error code]); + } + + return (uint64_t)(totalFreeSpace/1024ll)/1024ll; + } + + uint64_t getTotalDiskSpace (){ + uint64_t totalSpace = 0; + NSError *error = nil; + NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); + NSDictionary *dictionary = [[NSFileManager defaultManager] attributesOfFileSystemForPath:[paths lastObject] error: &error]; + + if (dictionary) { + NSNumber *fileSystemSizeInBytes = [dictionary objectForKey: NSFileSystemSize]; + NSNumber *freeFileSystemSizeInBytes = [dictionary objectForKey:NSFileSystemFreeSize]; + totalSpace = [fileSystemSizeInBytes unsignedLongLongValue]; + } else { + NSLog(@"Error Obtaining System Memory Info: Domain = %@, Code = %ld", [error domain], (long)[error code]); + } + + return (uint64_t)(totalSpace/1024ll)/1024ll; + } + + uint64_t getBusyDiskSpace (){ + uint64_t totalSpace = 0; + uint64_t totalFreeSpace = 0; + NSError *error = nil; + NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); + NSDictionary *dictionary = [[NSFileManager defaultManager] attributesOfFileSystemForPath:[paths lastObject] error: &error]; + + if (dictionary) { + NSNumber *fileSystemSizeInBytes = [dictionary objectForKey: NSFileSystemSize]; + NSNumber *freeFileSystemSizeInBytes = [dictionary objectForKey:NSFileSystemFreeSize]; + totalSpace = [fileSystemSizeInBytes unsignedLongLongValue]; + totalFreeSpace = [freeFileSystemSizeInBytes unsignedLongLongValue]; + } else { + NSLog(@"Error Obtaining System Memory Info: Domain = %@, Code = %ld", [error domain], (long)[error code]); + } + + return (uint64_t)((totalSpace-totalFreeSpace)/1024ll)/1024ll; + } +} + diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/iOS/DiskUtils.mm.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/iOS/DiskUtils.mm.meta new file mode 100644 index 00000000..ba1955b8 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/iOS/DiskUtils.mm.meta @@ -0,0 +1,32 @@ +fileFormatVersion: 2 +guid: f172f888ca5ba41a6addc3c333d78747 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + DefaultValueInitialized: true + - first: + iPhone: iOS + second: + enabled: 1 + settings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/tvOS.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/tvOS.meta new file mode 100644 index 00000000..fb1eb0b6 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/tvOS.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1964cf866c7ad4520926de7e66e1803b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/tvOS/DiskUtils.mm b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/tvOS/DiskUtils.mm new file mode 100644 index 00000000..86cac59a --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/tvOS/DiskUtils.mm @@ -0,0 +1,56 @@ +extern "C" +{ + uint64_t getAvailableDiskSpace () { + uint64_t totalFreeSpace; + NSError *error = nil; + NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); + NSDictionary *dictionary = [[NSFileManager defaultManager] attributesOfFileSystemForPath:[paths lastObject] error: &error]; + + if (dictionary) { + NSNumber *fileSystemSizeInBytes = [dictionary objectForKey: NSFileSystemSize]; + NSNumber *freeFileSystemSizeInBytes = [dictionary objectForKey:NSFileSystemFreeSize]; + totalFreeSpace = [freeFileSystemSizeInBytes unsignedLongLongValue]; + } else { + NSLog(@"Error Obtaining System Memory Info: Domain = %@, Code = %ld", [error domain], (long)[error code]); + } + + return (uint64_t)(totalFreeSpace/1024ll)/1024ll; + } + + uint64_t getTotalDiskSpace (){ + uint64_t totalSpace = 0; + NSError *error = nil; + NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); + NSDictionary *dictionary = [[NSFileManager defaultManager] attributesOfFileSystemForPath:[paths lastObject] error: &error]; + + if (dictionary) { + NSNumber *fileSystemSizeInBytes = [dictionary objectForKey: NSFileSystemSize]; + NSNumber *freeFileSystemSizeInBytes = [dictionary objectForKey:NSFileSystemFreeSize]; + totalSpace = [fileSystemSizeInBytes unsignedLongLongValue]; + } else { + NSLog(@"Error Obtaining System Memory Info: Domain = %@, Code = %ld", [error domain], (long)[error code]); + } + + return (uint64_t)(totalSpace/1024ll)/1024ll; + } + + uint64_t getBusyDiskSpace (){ + uint64_t totalSpace = 0; + uint64_t totalFreeSpace = 0; + NSError *error = nil; + NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); + NSDictionary *dictionary = [[NSFileManager defaultManager] attributesOfFileSystemForPath:[paths lastObject] error: &error]; + + if (dictionary) { + NSNumber *fileSystemSizeInBytes = [dictionary objectForKey: NSFileSystemSize]; + NSNumber *freeFileSystemSizeInBytes = [dictionary objectForKey:NSFileSystemFreeSize]; + totalSpace = [fileSystemSizeInBytes unsignedLongLongValue]; + totalFreeSpace = [freeFileSystemSizeInBytes unsignedLongLongValue]; + } else { + NSLog(@"Error Obtaining System Memory Info: Domain = %@, Code = %ld", [error domain], (long)[error code]); + } + + return (uint64_t)((totalSpace-totalFreeSpace)/1024ll)/1024ll; + } +} + diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/tvOS/DiskUtils.mm.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/tvOS/DiskUtils.mm.meta new file mode 100644 index 00000000..03eb8478 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/tvOS/DiskUtils.mm.meta @@ -0,0 +1,82 @@ +fileFormatVersion: 2 +guid: 428f081802e274819bc1fa3714156c31 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + : Any + second: + enabled: 0 + settings: + Exclude Editor: 1 + Exclude Linux64: 1 + Exclude OSXUniversal: 1 + Exclude Win: 1 + Exclude Win64: 1 + Exclude iOS: 1 + Exclude tvOS: 0 + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: AnyOS + - first: + Standalone: Linux64 + second: + enabled: 0 + settings: + CPU: x86_64 + - first: + Standalone: OSXUniversal + second: + enabled: 0 + settings: + CPU: x86_64 + - first: + Standalone: Win + second: + enabled: 0 + settings: + CPU: x86 + - first: + Standalone: Win64 + second: + enabled: 0 + settings: + CPU: x86_64 + - first: + iPhone: iOS + second: + enabled: 0 + settings: + AddToEmbeddedBinaries: false + CPU: AnyCPU + CompileFlags: + FrameworkDependencies: + - first: + tvOS: tvOS + second: + enabled: 1 + settings: + CPU: AnyCPU + CompileFlags: + FrameworkDependencies: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86.meta new file mode 100644 index 00000000..ef93cf5a --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: d5e6f3e3b0619534ca8b03217b3d44b3 +folderAsset: yes +timeCreated: 1463014266 +licenseType: Free +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86/DiskUtilsWinAPI.dll b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86/DiskUtilsWinAPI.dll new file mode 100644 index 00000000..438d723c Binary files /dev/null and b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86/DiskUtilsWinAPI.dll differ diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86/DiskUtilsWinAPI.dll.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86/DiskUtilsWinAPI.dll.meta new file mode 100644 index 00000000..f19c721a --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86/DiskUtilsWinAPI.dll.meta @@ -0,0 +1,107 @@ +fileFormatVersion: 2 +guid: 077c7c499d55eb842b6544ceceb45723 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 0 + isExplicitlyReferenced: 0 + validateReferences: 1 + platformData: + - first: + : Linux + second: + enabled: 1 + settings: + CPU: x86 + - first: + : LinuxUniversal + second: + enabled: 1 + settings: + CPU: AnyCPU + - first: + : OSXIntel + second: + enabled: 1 + settings: + CPU: AnyCPU + - first: + : OSXIntel64 + second: + enabled: 1 + settings: + CPU: AnyCPU + - first: + : WP8 + second: + enabled: 0 + settings: + CPU: AnyCPU + DontProcess: False + PlaceholderPath: + - first: + Android: Android + second: + enabled: 0 + settings: + CPU: AnyCPU + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 1 + settings: + CPU: x86 + DefaultValueInitialized: true + OS: Windows + - first: + Standalone: Linux64 + second: + enabled: 1 + settings: + CPU: AnyCPU + - first: + Standalone: OSXUniversal + second: + enabled: 1 + settings: + CPU: AnyCPU + - first: + Standalone: Win + second: + enabled: 1 + settings: + CPU: AnyCPU + - first: + Standalone: Win64 + second: + enabled: 1 + settings: + CPU: AnyCPU + - first: + Windows Store Apps: WindowsStoreApps + second: + enabled: 0 + settings: + CPU: AnyCPU + DontProcess: False + PlaceholderPath: + SDK: AnySDK + - first: + iPhone: iOS + second: + enabled: 0 + settings: + CompileFlags: + FrameworkDependencies: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86_64.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86_64.meta new file mode 100644 index 00000000..1242f820 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86_64.meta @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: c6f1236dc5adbd2439a97cd95c197f20 +folderAsset: yes +timeCreated: 1463014260 +licenseType: Free +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86_64/DiskUtilsWinAPI.dll b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86_64/DiskUtilsWinAPI.dll new file mode 100644 index 00000000..2da3c8ba Binary files /dev/null and b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86_64/DiskUtilsWinAPI.dll differ diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86_64/DiskUtilsWinAPI.dll.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86_64/DiskUtilsWinAPI.dll.meta new file mode 100644 index 00000000..f15a714c --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Runtime/x86_64/DiskUtilsWinAPI.dll.meta @@ -0,0 +1,76 @@ +fileFormatVersion: 2 +guid: 82687a06e60640148a87b59205a60790 +timeCreated: 1477575654 +licenseType: Pro +PluginImporter: + serializedVersion: 1 + iconMap: {} + executionOrder: {} + isPreloaded: 0 + platformData: + Android: + enabled: 0 + settings: + CPU: AnyCPU + Any: + enabled: 0 + settings: {} + Editor: + enabled: 1 + settings: + CPU: x86_64 + DefaultValueInitialized: true + OS: Windows + Linux: + enabled: 1 + settings: + CPU: x86 + Linux64: + enabled: 1 + settings: + CPU: x86_64 + LinuxUniversal: + enabled: 1 + settings: + CPU: AnyCPU + OSXIntel: + enabled: 1 + settings: + CPU: AnyCPU + OSXIntel64: + enabled: 1 + settings: + CPU: AnyCPU + OSXUniversal: + enabled: 1 + settings: + CPU: AnyCPU + WP8: + enabled: 0 + settings: + CPU: AnyCPU + DontProcess: False + PlaceholderPath: + Win: + enabled: 1 + settings: + CPU: None + Win64: + enabled: 1 + settings: + CPU: AnyCPU + WindowsStoreApps: + enabled: 0 + settings: + CPU: AnyCPU + DontProcess: False + PlaceholderPath: + SDK: AnySDK + iOS: + enabled: 0 + settings: + CompileFlags: + FrameworkDependencies: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TestDiskUtils.cs b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TestDiskUtils.cs new file mode 100644 index 00000000..17fd8008 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TestDiskUtils.cs @@ -0,0 +1,127 @@ +using UnityEngine; +using System.Collections; +using System.IO; +using System.Runtime.Serialization.Formatters.Binary; +using System.Runtime.InteropServices; +using SimpleDiskUtils; + +public class TestDiskUtils : MonoBehaviour { + + [SerializeField] + TextMesh text; + + string obj = "A"; + + + void PrintDebug(string str) + { + if (text != null) + text.text += str; + Debug.Log(str); + } + + void PrintDebugLn(string str = "") + { + PrintDebug(str + "\n"); + } + + void Update(){ + if (obj.Length >= 3000000) + return; + + obj += obj; + + // Append until obj size is at least 3 MB + if (obj.Length < 3000000) + return; + + StartCoroutine(Tests()); + } + + // Update is called once per frame + + void PrintStorageStats () { + PrintDebugLn("=========== AVAILABLE SPACE : " + DiskUtils.CheckAvailableSpace() + " MB ==========="); + PrintDebugLn("=========== BUSY SPACE : " + DiskUtils.CheckBusySpace() + " MB ==========="); + PrintDebugLn("=========== TOTAL SPACE : " + DiskUtils.CheckTotalSpace() + " MB ==========="); + } + +#if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN + void PrintStorageStats(string drive) + { + PrintDebugLn("=========== AVAILABLE SPACE : " + DiskUtils.CheckAvailableSpace(drive) + " MB ==========="); + PrintDebugLn("=========== BUSY SPACE : " + DiskUtils.CheckBusySpace(drive) + " MB ==========="); + PrintDebugLn("=========== TOTAL SPACE : " + DiskUtils.CheckTotalSpace(drive) + " MB ==========="); + } + #endif + + IEnumerator Tests() + { + text.text = ""; + + string dir = Application.persistentDataPath + "/TestDiskUtils/"; + string storePath = Application.persistentDataPath + "/TestDiskUtils/Test.txt"; + + +#if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN + foreach (string drive in DiskUtils.GetDriveNames()) + { + if (drive != "C:/") + { + dir = drive + "TestDiskUtils/"; + storePath = drive + "TestDiskUtils/Test.txt"; + } + + PrintDebugLn(); + PrintDebugLn(">>> NOW TESTING ON DRIVE " + drive + " <<<"); +#endif + + if (!Directory.Exists(dir)) + Directory.CreateDirectory(dir); + + if (File.Exists(storePath)) + File.Delete(storePath); + + +PrintStorageStats( +#if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN + drive +#endif +); + + if (!Directory.Exists(dir)) + Directory.CreateDirectory(dir); + + DiskUtils.SaveFile(obj, storePath); + + PrintDebugLn("===== FILE ADDED!!! (Test File is around 3-4 MB) ====="); + +PrintStorageStats( +#if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN + drive +#endif +); + + if (File.Exists(storePath)) + { + File.Delete(storePath); + PrintDebugLn("===== FILE DELETED!!! ====="); + } + else { + PrintDebugLn("===== File not found: most likely also failed on create ====="); + } + +PrintStorageStats( +#if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN + drive +#endif +); + +#if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN + } +#endif + + yield return null; + } + +} diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TestDiskUtils.cs.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TestDiskUtils.cs.meta new file mode 100644 index 00000000..6659568e --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TestDiskUtils.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: da2a729d532794cf1a770a0fd09818f1 +timeCreated: 1458810329 +licenseType: Free +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TestDiskUtils.unity b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TestDiskUtils.unity new file mode 100644 index 00000000..26a398e1 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TestDiskUtils.unity @@ -0,0 +1,376 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &4 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 1 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 0 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 1024 + m_ReflectionCompression: 2 + m_MixedBakeMode: 1 + m_BakeBackend: 0 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 512 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 0 + m_PVRDenoiserTypeDirect: 0 + m_PVRDenoiserTypeIndirect: 0 + m_PVRDenoiserTypeAO: 0 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 0 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 4890085278179872738, guid: 8cbe530666c9a48a2b91515d6390468e, type: 2} +--- !u!196 &5 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &112422414 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 112422417} + - component: {fileID: 112422416} + - component: {fileID: 112422415} + - component: {fileID: 112422418} + m_Layer: 0 + m_Name: OutputText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!102 &112422415 +TextMesh: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 112422414} + m_Text: ' + +' + m_OffsetZ: 0 + m_CharacterSize: 1 + m_LineSpacing: 1 + m_Anchor: 0 + m_Alignment: 0 + m_TabSize: 4 + m_FontSize: 0 + m_FontStyle: 0 + m_RichText: 1 + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_Color: + serializedVersion: 2 + rgba: 4294967295 +--- !u!23 &112422416 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 112422414} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10100, guid: 0000000000000000e000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!4 &112422417 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 112422414} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -1.43, y: 2.42, z: 0} + m_LocalScale: {x: 0.12968254, y: 0.12968254, z: 0.12968254} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &112422418 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 112422414} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b86aed48af6427b49918b8de3da5a5ac, type: 3} + m_Name: + m_EditorClassIdentifier: + speed: 3 +--- !u!1 &325732734 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 325732736} + - component: {fileID: 325732735} + m_Layer: 0 + m_Name: TestDiskUtils + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &325732735 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 325732734} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: da2a729d532794cf1a770a0fd09818f1, type: 3} + m_Name: + m_EditorClassIdentifier: + text: {fileID: 112422415} +--- !u!4 &325732736 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 325732734} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1937442275 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1937442280} + - component: {fileID: 1937442279} + - component: {fileID: 1937442278} + - component: {fileID: 1937442276} + m_Layer: 0 + m_Name: Camera + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &1937442276 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1937442275} + m_Enabled: 1 +--- !u!124 &1937442278 +Behaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1937442275} + m_Enabled: 1 +--- !u!20 &1937442279 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1937442275} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0.019607844} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 0 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &1937442280 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1937442275} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -5.27} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TestDiskUtils.unity.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TestDiskUtils.unity.meta new file mode 100644 index 00000000..baa2b30b --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TestDiskUtils.unity.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6c0de2a9e7c8c4c35a45db77a7aa7d8e +timeCreated: 1458810439 +licenseType: Free +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TextMover.cs b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TextMover.cs new file mode 100644 index 00000000..9c6daccd --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TextMover.cs @@ -0,0 +1,43 @@ +using UnityEngine; +using System.Collections; + +public class TextMover: MonoBehaviour { + + [SerializeField] + float speed = 30f; + + // Update is called once per frame + void Update() + { + float h, v; + + #if !UNITY_EDITOR && (UNITY_ANDROID || UNITY_IPHONE) + GetMobile(out h, out v); + #else + GetDesktop(out h, out v); + #endif + + transform.position = (transform.position + new Vector3(h, v) * speed * Time.deltaTime); + } + + void GetMobile(out float h, out float v) + { + if (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Moved) + { + Vector2 delta = Input.GetTouch(0).deltaPosition; + + h = delta.x; + v = delta.y; + } + else + { + h = v = 0f; + } + } + + void GetDesktop(out float h, out float v) + { + h = Input.GetAxis("Horizontal"); + v = Input.GetAxis("Vertical"); + } +} diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TextMover.cs.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TextMover.cs.meta new file mode 100644 index 00000000..394b2f47 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/Samples~/DiskUtilsDemo/TextMover.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: b86aed48af6427b49918b8de3da5a5ac +timeCreated: 1463016937 +licenseType: Free +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/package.json b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/package.json new file mode 100644 index 00000000..7745bcd6 --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/package.json @@ -0,0 +1,20 @@ +{ + "name": "com.activetheoryinc.diskutils", + "version": "1.2.2", + "displayName": "Simple Disk Utils", + "description": "Useful cross-platform analysis of device disk. Updated by Active Theory Inc for modern UPM support", + "unity": "2020.3", + "dependencies": { + }, + "keywords": [ + "Disk", + "Memory", + "Hard drive" + ], + "author": { + "name": "Active Theory Inc", + "email": "developers@bitgym.com", + "url": "https://github.com/keerthik/simple-disk-utils/" + }, + "type": "library" +} \ No newline at end of file diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/package.json.meta b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/package.json.meta new file mode 100644 index 00000000..95518dae --- /dev/null +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/SimpleDiskUtils/package.json.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 4186347e62c414a39ae06e6367d69a0e +PackageManifestImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/YooAsset/CHANGELOG.md b/Assets/OxGFrame/AssetLoader/ThirdParty/YooAsset/CHANGELOG.md index 96069c8c..c6cd07e8 100644 --- a/Assets/OxGFrame/AssetLoader/ThirdParty/YooAsset/CHANGELOG.md +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/YooAsset/CHANGELOG.md @@ -2,6 +2,29 @@ All notable changes to this package will be documented in this file. +## [2.1.1] - 2024-01-17 + +### Fixed + +- (#224) 修复了编辑器模式打包时 SimulateBuild 报错的问题。 +- (#223) 修复了资源构建界面读取配置导致的报错问题。 + +### Added + +- 支持共享资源打包规则,可以定制化独立的构建规则。 + + ```c# + public class BuildParameters + { + /// + /// 是否启用共享资源打包 + /// + public bool EnableSharePackRule = false; + } + ``` + +- 微信小游戏平台,资源下载器支持底层缓存查询。 + ## [2.1.0] - 2023-12-27 升级了 Scriptable build pipeline (SBP) 的版本,来解决图集引用的精灵图片冗余问题。 diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/YooAsset/Editor/AssetBundleBuilder/BuildBundleInfo.cs b/Assets/OxGFrame/AssetLoader/ThirdParty/YooAsset/Editor/AssetBundleBuilder/BuildBundleInfo.cs index 5b9997d2..d009ec5a 100644 --- a/Assets/OxGFrame/AssetLoader/ThirdParty/YooAsset/Editor/AssetBundleBuilder/BuildBundleInfo.cs +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/YooAsset/Editor/AssetBundleBuilder/BuildBundleInfo.cs @@ -142,7 +142,7 @@ public List GetAllBuiltinAssetPaths() /// public UnityEditor.AssetBundleBuild CreatePipelineBuild() { - // 注意:我们不在支持AssetBundle的变种机制 + // 注意:我们不再支持AssetBundle的变种机制 AssetBundleBuild build = new AssetBundleBuild(); build.assetBundleName = BundleName; build.assetBundleVariant = string.Empty; diff --git a/Assets/OxGFrame/AssetLoader/ThirdParty/YooAsset/package.json b/Assets/OxGFrame/AssetLoader/ThirdParty/YooAsset/package.json index bbc37e81..e11449b9 100644 --- a/Assets/OxGFrame/AssetLoader/ThirdParty/YooAsset/package.json +++ b/Assets/OxGFrame/AssetLoader/ThirdParty/YooAsset/package.json @@ -1,7 +1,7 @@ { "name": "com.tuyoogame.yooasset", "displayName": "YooAsset", - "version": "2.1.0", + "version": "2.1.1", "unity": "2019.4", "description": "unity3d resources management system.", "author": { diff --git a/Assets/OxGFrame/CHANGELOG.md b/Assets/OxGFrame/CHANGELOG.md index 639102e9..60b75ec9 100644 --- a/Assets/OxGFrame/CHANGELOG.md +++ b/Assets/OxGFrame/CHANGELOG.md @@ -1,5 +1,45 @@ # CHANGELOG +## [2.9.13] - 2024-02-01 +- Updated yooasset to [v2.1.1](https://github.com/tuyoogame/YooAsset/releases/tag/2.1.1). +- Added [DiskUtil by keerthik](https://github.com/keerthik/simple-disk-utils) third party in AssetLoader module (not supported WebGL). +- Added Check available disk space in patch and package download step (not supported WebGL). + - Must add PatchEvents.PatchCheckDiskNotEnoughSpace in patchEvents to handle it (checkout BundleDemo). +- Added CheckDiskSpace flag setting on PatchLauncher inspector. +- Added Can set user event handler to PackageOperation. +```C# +public class PackageOperation +{ + /// + /// Enable or disable disk space check procedure (default is true) + /// + public bool checkDiskSpace = true; + + public OnPatchRepairFailed onPatchRepairFailed; + public OnPatchInitPatchModeFailed onPatchInitPatchModeFailed; + public OnPatchVersionUpdateFailed onPatchVersionUpdateFailed; + public OnPatchManifestUpdateFailed onPatchManifestUpdateFailed; + public OnPatchCheckDiskNotEnoughSpace onPatchCheckDiskNotEnoughSpace; + public OnPatchDownloadFailed onPatchDownloadFailed; + + public void UserTryPatchRepair() + public void UserTryInitPatchMode() + public void UserTryPatchVersionUpdate() + public void UserTryPatchManifestUpdate() + public void UserTryCreateDownloader() +} +``` +- Modified method name [#1adf602](https://github.com/michael811125/OxGFrame/commit/1adf6028aa980169732ea1a40f2d8df1b8c4584e) (Replace all below). +``` +method ShowAnime => ShowAnimation + +method HideAnime => HideAnimation + +delegate AnimeEndCb => AnimationEnd + +param animeEndCb => animationEnd +``` + ## [2.9.12] - 2024-01-16 - Added CoreFrames.UIFrame.GetStackByStackCount method. ```C# diff --git a/Assets/OxGFrame/Samples~/BundleDemo/BundleDemo.unity b/Assets/OxGFrame/Samples~/BundleDemo/BundleDemo.unity index d02d544d..45d34b3d 100644 --- a/Assets/OxGFrame/Samples~/BundleDemo/BundleDemo.unity +++ b/Assets/OxGFrame/Samples~/BundleDemo/BundleDemo.unity @@ -2054,6 +2054,11 @@ PrefabInstance: propertyPath: decryptArgs value: aes,aes_key_michaelO_birthday1125,birthday1125 objectReference: {fileID: 0} + - target: {fileID: 5015912702362567919, guid: 992bffa5c79679749861326baa5441c6, + type: 3} + propertyPath: checkDiskSpace + value: 1 + objectReference: {fileID: 0} - target: {fileID: 5015912702362567919, guid: 992bffa5c79679749861326baa5441c6, type: 3} propertyPath: skipMainDownload diff --git a/Assets/OxGFrame/Samples~/BundleDemo/Scripts/BundleDemo.cs b/Assets/OxGFrame/Samples~/BundleDemo/Scripts/BundleDemo.cs index 2742c895..21339aa6 100644 --- a/Assets/OxGFrame/Samples~/BundleDemo/Scripts/BundleDemo.cs +++ b/Assets/OxGFrame/Samples~/BundleDemo/Scripts/BundleDemo.cs @@ -37,7 +37,6 @@ public class BundleDemo : MonoBehaviour public Toggle groupToggle = null; private EventGroup _patchEvents = new EventGroup(); - private int _retryType = 0; private IEnumerator Start() @@ -88,12 +87,13 @@ private void _InitPatchEvents() // 2. PatchGoToAppStore // 3. PatchAppVersionUpdateFailed // 4. PatchInitPatchModeFailed - // 5. PatchCreateDownloader - // 6. PatchDownloadProgression - // 7. PatchVersionUpdateFailed - // 8. PatchManifestUpdateFailed - // 9. PatchDownloadFailed - // 10. PatchDownloadCanceled + // 5. PatchVersionUpdateFailed + // 6. PatchManifestUpdateFailed + // 7. PatchCreateDownloader + // 8. PatchCheckDiskNotEnoughSpace + // 9. PatchDownloadProgression + // 10. PatchDownloadFailed + // 11. PatchDownloadCanceled #region Add PatchEvents Handle this._patchEvents.AddListener(this._OnHandleEventMessage); @@ -101,10 +101,11 @@ private void _InitPatchEvents() this._patchEvents.AddListener(this._OnHandleEventMessage); this._patchEvents.AddListener(this._OnHandleEventMessage); this._patchEvents.AddListener(this._OnHandleEventMessage); - this._patchEvents.AddListener(this._OnHandleEventMessage); - this._patchEvents.AddListener(this._OnHandleEventMessage); this._patchEvents.AddListener(this._OnHandleEventMessage); this._patchEvents.AddListener(this._OnHandleEventMessage); + this._patchEvents.AddListener(this._OnHandleEventMessage); + this._patchEvents.AddListener(this._OnHandleEventMessage); + this._patchEvents.AddListener(this._OnHandleEventMessage); this._patchEvents.AddListener(this._OnHandleEventMessage); this._patchEvents.AddListener(this._OnHandleEventMessage); #endregion @@ -208,6 +209,21 @@ private void _OnHandleEventMessage(IEventMessage message) this._retryType = 2; this.ShowRetryWindow("Init Patch Mode Failed"); } + else if (message is PatchEvents.PatchVersionUpdateFailed) + { + // Show Patch Version Update Failed Retry UI + + this._retryType = 3; + this.ShowRetryWindow("Patch Version Update Failed"); + + } + else if (message is PatchEvents.PatchManifestUpdateFailed) + { + // Show Patch Manifest Update Failed Retry UI + + this._retryType = 4; + this.ShowRetryWindow("Patch Manifest Update Failed"); + } else if (message is PatchEvents.PatchCreateDownloader) { // Show GroupInfos UI for user to choose which one they want to download @@ -221,6 +237,18 @@ private void _OnHandleEventMessage(IEventMessage message) this.ShowConfirmWindow(msgData.groupInfos); #endregion } + else if (message is PatchEvents.PatchCheckDiskNotEnoughSpace) + { + // Show Disk Not Enough Space Retry UI + + // Note: You can retry create downloader again (unless, user frees up space) or submit Application.Quit event!!! + + var msgData = message as PatchEvents.PatchCheckDiskNotEnoughSpace; + + // Here use action type is 6 (Application.Quit) + this._retryType = 6; // 5 or 6 + this.ShowRetryWindow($"Disk Not Enough Space!!!\nAvailable Disk Space Size: {BundleUtility.GetMegabytesToString(msgData.availableMegabytes)}\nTotal Patch Size: {BundleUtility.GetBytesToString((ulong)msgData.patchTotalBytes)}"); + } else if (message is PatchEvents.PatchDownloadProgression) { #region Download Progression @@ -247,21 +275,6 @@ private void _OnHandleEventMessage(IEventMessage message) ); #endregion } - else if (message is PatchEvents.PatchVersionUpdateFailed) - { - // Show Patch Version Update Failed Retry UI - - this._retryType = 3; - this.ShowRetryWindow("Patch Version Update Failed"); - - } - else if (message is PatchEvents.PatchManifestUpdateFailed) - { - // Show Patch Manifest Update Failed Retry UI - - this._retryType = 4; - this.ShowRetryWindow("Patch Manifest Update Failed"); - } else if (message is PatchEvents.PatchDownloadFailed) { // Show Patch Download Files Failed Retry UI @@ -377,6 +390,11 @@ public void RetryEvent() // Add send event in Retry UI (click event) PatchUserEvents.UserTryCreateDownloader.SendEventMessage(); break; + + case 6: + // Application quit + Application.Quit(); + break; } #endregion } diff --git a/Assets/OxGFrame/package.json b/Assets/OxGFrame/package.json index 1786cf29..fa726b06 100644 --- a/Assets/OxGFrame/package.json +++ b/Assets/OxGFrame/package.json @@ -2,7 +2,7 @@ "name": "com.michaelo.oxgframe", "displayName": "OxGFrame", "description": "The OxGFrame is a framework based on Unity for accelerating game development. Supports multi-platform Win, OSX, Android, iOS, WebGL.", - "version": "2.9.12", + "version": "2.9.13", "unity": "2021.3", "license": "MIT", "samples": [ diff --git a/Assets/Settings/OxGFrame/BindCodeSetting.asset b/Assets/Settings/OxGFrame/BindCodeSetting.asset index 68e46e65..e2c7d3c3 100644 --- a/Assets/Settings/OxGFrame/BindCodeSetting.asset +++ b/Assets/Settings/OxGFrame/BindCodeSetting.asset @@ -15,7 +15,7 @@ MonoBehaviour: variableCaseType: 0 variableAccessModifier: protected variablePrefix: _ - methodType: 1 + methodType: 0 methodAccessModifier: protected methodPrefix: methodName: InitBind diff --git a/Assets/Settings/OxGKit/LoggerSetting.asset b/Assets/Settings/OxGKit/LoggerSetting.asset index c53da5e3..cb490192 100644 --- a/Assets/Settings/OxGKit/LoggerSetting.asset +++ b/Assets/Settings/OxGKit/LoggerSetting.asset @@ -28,5 +28,7 @@ MonoBehaviour: logActive: 1 - loggerName: OxGFrame.CenterFrame.Logger logActive: 1 + - loggerName: OxGKit.Utilities.Logger + logActive: 1 loadLoggers: 0 resetLoggers: 0 diff --git a/Packages/manifest.json b/Packages/manifest.json index e9a36f0f..b20ba828 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -22,6 +22,7 @@ "com.unity.test-framework": "1.1.33", "com.unity.textmeshpro": "3.0.6", "com.unity.timeline": "1.6.5", + "com.unity.toolchain.win-x86_64-linux-x86_64": "2.0.6", "com.unity.ugui": "1.0.0", "com.unity.modules.ai": "1.0.0", "com.unity.modules.androidjni": "1.0.0", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index 43a4cbbc..8c28f391 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -5,7 +5,7 @@ "depth": 0, "source": "git", "dependencies": {}, - "hash": "51da1d4c433504f3171fff66217035b89c45d823" + "hash": "6ffb977ef31eb20ab1824f92174fc6e891209401" }, "com.domybest.lwmybox": { "version": "https://github.com/michael811125/LWMyBox.git", @@ -28,14 +28,14 @@ "depth": 0, "source": "git", "dependencies": {}, - "hash": "92afc360afec061e35a88a87409e432c74f63c42" + "hash": "fafc7e74f295da723fee38d7e675bfffaf21c849" }, "com.michaelo.oxgkit.utilities": { "version": "https://github.com/michael811125/OxGKit.git?path=Assets/OxGKit/Utilities/Scripts", "depth": 0, "source": "git", "dependencies": {}, - "hash": "92afc360afec061e35a88a87409e432c74f63c42" + "hash": "fafc7e74f295da723fee38d7e675bfffaf21c849" }, "com.unity.2d.animation": { "version": "7.0.12", @@ -232,6 +232,22 @@ "com.unity.searcher": "4.9.1" } }, + "com.unity.sysroot": { + "version": "2.0.7", + "depth": 1, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.sysroot.linux-x86_64": { + "version": "2.0.6", + "depth": 1, + "source": "registry", + "dependencies": { + "com.unity.sysroot": "2.0.7" + }, + "url": "https://packages.unity.com" + }, "com.unity.test-framework": { "version": "1.1.33", "depth": 0, @@ -264,6 +280,16 @@ }, "url": "https://packages.unity.com" }, + "com.unity.toolchain.win-x86_64-linux-x86_64": { + "version": "2.0.6", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.sysroot": "2.0.7", + "com.unity.sysroot.linux-x86_64": "2.0.6" + }, + "url": "https://packages.unity.com" + }, "com.unity.ugui": { "version": "1.0.0", "depth": 0,