The type of compression the archive uses.
Only accessible if the archive loaded successfully.
See Also: AssetBundles compression.
using Unity.Content; using Unity.IO.Archive; using UnityEditor; using UnityEngine;
public static class ArchiveUtilities { #if UNITY_EDITOR [MenuItem("Debug/Check Archive Compression")] static public void CheckCompression() { string archivePath = EditorUtility.OpenFilePanel("Pick AssetBundle or other Unity Archive file", "", ""); if (archivePath.Length == 0) return;
Debug.Log($"Bundle {archivePath} has compression type {GetArchiveCompression(archivePath)}"); } #endif
static public UnityEngine.CompressionType GetArchiveCompression(string archivePath) { var archiveHandle = ArchiveFileInterface.MountAsync(ContentNamespace.Default, archivePath, "temp:"); archiveHandle.JobHandle.Complete();
if (archiveHandle.Status == ArchiveStatus.Failed) throw new System.ArgumentException($"Failed to load {archivePath}");
var compression = archiveHandle.Compression; archiveHandle.Unmount().Complete();
return compression; } }