using UnityEditor; using UnityEditor.Build.Reporting; using System.Linq; public static class BuildScript { public static void Windows() { Build(BuildTarget.StandaloneWindows64, "Builds/Windows"); } public static void Android() { Build(BuildTarget.Android, "Builds/Android"); } public static void Mac() { Build(BuildTarget.StandaloneOSX, "Builds/Mac"); } public static void iOS() { Build(BuildTarget.iOS, "Builds/iOS"); } private static void Build(BuildTarget target, string outputPath) { UnityEngine.Debug.Log("### Inside Unity ###"); UnityEngine.Debug.Log(target); UnityEngine.Debug.Log(outputPath); var scenes = EditorBuildSettings.scenes .Where(s => s.enabled) .Select(s => s.path) .ToArray(); var report = BuildPipeline.BuildPlayer( scenes, outputPath, target, BuildOptions.None ); if (report.summary.result != BuildResult.Succeeded) { throw new System.Exception("Build failed: " + report.summary.result); } } }