using UnityEditor; using UnityEditor.Build; using UnityEngine; public class ExampleClass : IActiveBuildTargetChanged { public int callbackOrder { get { return 0; } } [MenuItem( "Tools/Switch Platform" )] public static void SwitchPlatform() { EditorUserBuildSettings.SwitchActiveBuildTargetAsync ( targetGroup : BuildTargetGroup.Standalone , target : BuildTarget.StandaloneWindows ); } public void OnActiveBuildTargetChanged ( BuildTarget previousTarget , BuildTarget newTarget ) { Debug.LogFormat( "{0} -> {1}", previousTarget, newTarget ); } }
Unity 2017.1から EditorUserBuildSettings.SwitchActiveBuildTargetAsync
が追加されました
非同期で Switch Platform できるみたいです
Switch Platform が完了したかどうかは
IActiveBuildTargetChanged
インターフェイスの
OnActiveBuildTargetChanged
を実装することで検知できます