AssetBundleBuilderSetting.cs 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. using System;
  2. using UnityEngine;
  3. using UnityEditor;
  4. namespace YooAsset.Editor
  5. {
  6. public static class AssetBundleBuilderSetting
  7. {
  8. // EBuildPipeline
  9. public static EBuildPipeline GetPackageBuildPipeline(string packageName)
  10. {
  11. string key = $"{Application.productName}_{packageName}_{nameof(EBuildPipeline)}";
  12. return (EBuildPipeline)EditorPrefs.GetInt(key, (int)EBuildPipeline.BuiltinBuildPipeline);
  13. }
  14. public static void SetPackageBuildPipeline(string packageName, EBuildPipeline buildPipeline)
  15. {
  16. string key = $"{Application.productName}_{packageName}_{nameof(EBuildPipeline)}";
  17. EditorPrefs.SetInt(key, (int)buildPipeline);
  18. }
  19. // EBuildMode
  20. public static EBuildMode GetPackageBuildMode(string packageName, EBuildPipeline buildPipeline)
  21. {
  22. string key = $"{Application.productName}_{packageName}_{buildPipeline}_{nameof(EBuildMode)}";
  23. return (EBuildMode)EditorPrefs.GetInt(key, (int)EBuildMode.ForceRebuild);
  24. }
  25. public static void SetPackageBuildMode(string packageName, EBuildPipeline buildPipeline, EBuildMode buildMode)
  26. {
  27. string key = $"{Application.productName}_{packageName}_{buildPipeline}_{nameof(EBuildMode)}";
  28. EditorPrefs.SetInt(key, (int)buildMode);
  29. }
  30. // ECompressOption
  31. public static ECompressOption GetPackageCompressOption(string packageName, EBuildPipeline buildPipeline)
  32. {
  33. string key = $"{Application.productName}_{packageName}_{buildPipeline}_{nameof(ECompressOption)}";
  34. return (ECompressOption)EditorPrefs.GetInt(key, (int)ECompressOption.LZ4);
  35. }
  36. public static void SetPackageCompressOption(string packageName, EBuildPipeline buildPipeline, ECompressOption compressOption)
  37. {
  38. string key = $"{Application.productName}_{packageName}_{buildPipeline}_{nameof(ECompressOption)}";
  39. EditorPrefs.SetInt(key, (int)compressOption);
  40. }
  41. // EFileNameStyle
  42. public static EFileNameStyle GetPackageFileNameStyle(string packageName, EBuildPipeline buildPipeline)
  43. {
  44. string key = $"{Application.productName}_{packageName}_{buildPipeline}_{nameof(EFileNameStyle)}";
  45. return (EFileNameStyle)EditorPrefs.GetInt(key, (int)EFileNameStyle.HashName);
  46. }
  47. public static void SetPackageFileNameStyle(string packageName, EBuildPipeline buildPipeline, EFileNameStyle fileNameStyle)
  48. {
  49. string key = $"{Application.productName}_{packageName}_{buildPipeline}_{nameof(EFileNameStyle)}";
  50. EditorPrefs.SetInt(key, (int)fileNameStyle);
  51. }
  52. // EBuildinFileCopyOption
  53. public static EBuildinFileCopyOption GetPackageBuildinFileCopyOption(string packageName, EBuildPipeline buildPipeline)
  54. {
  55. string key = $"{Application.productName}_{packageName}_{buildPipeline}_{nameof(EBuildinFileCopyOption)}";
  56. return (EBuildinFileCopyOption)EditorPrefs.GetInt(key, (int)EBuildinFileCopyOption.None);
  57. }
  58. public static void SetPackageBuildinFileCopyOption(string packageName, EBuildPipeline buildPipeline, EBuildinFileCopyOption buildinFileCopyOption)
  59. {
  60. string key = $"{Application.productName}_{packageName}_{buildPipeline}_{nameof(EBuildinFileCopyOption)}";
  61. EditorPrefs.SetInt(key, (int)buildinFileCopyOption);
  62. }
  63. // BuildFileCopyParams
  64. public static string GetPackageBuildinFileCopyParams(string packageName, EBuildPipeline buildPipeline)
  65. {
  66. string key = $"{Application.productName}_{packageName}_{buildPipeline}_BuildFileCopyParams";
  67. return EditorPrefs.GetString(key, string.Empty);
  68. }
  69. public static void SetPackageBuildinFileCopyParams(string packageName, EBuildPipeline buildPipeline, string buildinFileCopyParams)
  70. {
  71. string key = $"{Application.productName}_{packageName}_{buildPipeline}_BuildFileCopyParams";
  72. EditorPrefs.SetString(key, buildinFileCopyParams);
  73. }
  74. // EncyptionClassName
  75. public static string GetPackageEncyptionClassName(string packageName, EBuildPipeline buildPipeline)
  76. {
  77. string key = $"{Application.productName}_{packageName}_{buildPipeline}_EncyptionClassName";
  78. return EditorPrefs.GetString(key, string.Empty);
  79. }
  80. public static void SetPackageEncyptionClassName(string packageName, EBuildPipeline buildPipeline, string encyptionClassName)
  81. {
  82. string key = $"{Application.productName}_{packageName}_{buildPipeline}_EncyptionClassName";
  83. EditorPrefs.SetString(key, encyptionClassName);
  84. }
  85. }
  86. }