targetGroup | 目标构建平台。 |
target | 构建目标组。 |
bool 如果构建目标成功切换,则为 True,否则为 False(例如,如果许可证检查失败,文件丢失,或用户已通过 UI 取消操作)。
选择一个新的构建目标,在下一个编辑器更新期间处于活动状态。
此函数在下一个编辑器更新期间将传递的构建目标切换为活动构建。
当您更改活动构建目标时,所有受当前平台设置影响的脚本文件和资源将在下一个编辑器更新时重新编译或重新导入。有关如何立即导入资源的信息,请参阅 SwitchActiveBuildTarget。
如果给定目标是独立目标,则调用 SwitchActiveBuildTarget 还会影响 EditorUserBuildSettings.selectedStandaloneTarget。
注意:在编辑器以 批处理模式 运行时,此函数不可用。更改构建目标需要为给定目标重新编译脚本代码,而这在脚本代码执行时无法完成。在编辑器中这不是问题,因为操作被推迟到下一个编辑器更新。但是,在批处理模式下,编辑器将在执行指定的脚本代码后停止,因此无法推迟操作。要设置在批处理模式下使用的构建目标,请使用 buildtarget 命令行参数。
using UnityEngine; using UnityEditor; using UnityEditor.Build;
public class SwitchPlatformExample : IActiveBuildTargetChanged { [MenuItem("Example/Switch Platform")] public static void PerformSwitch() { // Switch to Windows standalone build. EditorUserBuildSettings.SwitchActiveBuildTargetAsync(BuildTargetGroup.Standalone, BuildTarget.StandaloneWindows); }
public int callbackOrder { get { return 0; } } public void OnActiveBuildTargetChanged(BuildTarget previousTarget, BuildTarget newTarget) { Debug.Log("Active platform is now " + newTarget); } }