123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- // --------------------------
- // 作者:烟雨迷离半世殇
- // 邮箱:1778139321@qq.com
- // 日期:2022年7月27日, 星期三
- // --------------------------
- using UnityEditor;
- using UnityEngine;
- using System.IO;
- using UnityEditor.SceneManagement;
- using YooAsset.Editor;
- namespace ET
- {
- /// <summary>
- /// 编辑器下一键Build AB
- /// </summary>
- /*public static class BuildABTool
- {
- [MonKey.Command("Build AB", "ProjectS编辑器下Build AB工具", Category = "Build")]
- public static void BuildAB_Auto()
- {
- int cachedVersion = EditorPrefs.GetInt("YooAssetABVersion");
- cachedVersion++;
- EditorPrefs.SetInt("YooAssetABVersion", cachedVersion);
-
- BuildABWithVersion(cachedVersion);
- }
- public static void BuildABWithVersion(int buildVersion = 0)
- {
- Debug.Log($"开始构建AB,平台为:{EditorUserBuildSettings.activeBuildTarget} Version为 {buildVersion}");
- EditorSceneManager.OpenScene(GlobalDefine.InitScenePath);
- // 构建参数
- string defaultOutputRoot = AssetBundleBuilderHelper.GetDefaultOutputRoot();
- BuildParameters buildParameters = new BuildParameters();
- buildParameters.OutputRoot = defaultOutputRoot;
- buildParameters.BuildTarget = EditorUserBuildSettings.activeBuildTarget;
- buildParameters.BuildPipeline = EBuildPipeline.BuiltinBuildPipeline;
- buildParameters.BuildMode = EBuildMode.IncrementalBuild;
- buildParameters.BuildVersion = buildVersion;
- buildParameters.BuildinTags = "buildin";
- buildParameters.VerifyBuildingResult = true;
- buildParameters.EnableAddressable = true;
- buildParameters.CopyBuildinTagFiles = true;
- buildParameters.EncryptionServices = new GameEncryption();
- buildParameters.CompressOption = ECompressOption.LZ4;
- // 执行构建
- AssetBundleBuilder builder = new AssetBundleBuilder();
- bool succeed = builder.Run(buildParameters);
- // 需要对构建出的AB包进行后处理
- // 1. 更改文件夹名为App version名
- // 2. 将文件夹移动到同父级目录的CDN文件夹下
- string oriABPath =
- $"{buildParameters.OutputRoot}/{EditorUserBuildSettings.activeBuildTarget}/{buildVersion}";
- string finalABDir =
- $"{buildParameters.OutputRoot}/CDN/{EditorUserBuildSettings.activeBuildTarget}";
- string finalABPath =
- $"{buildParameters.OutputRoot}/CDN/{EditorUserBuildSettings.activeBuildTarget}/{Init.Instance.Version}";
- if (Directory.Exists(finalABDir))
- {
- Directory.Delete(finalABDir, true);
- }
- Directory.CreateDirectory(finalABDir);
- Directory.Move(oriABPath, finalABPath);
- Debug.Log($"构建AB结果:{succeed},将{oriABPath}移动到{finalABPath}");
- }
- }*/
- }
|