Edited build script
This commit is contained in:
@@ -1,18 +1,20 @@
|
||||
using System.IO;
|
||||
using UnityEditor;
|
||||
|
||||
public static class BuildScript
|
||||
{
|
||||
// Helper: use EditorBuildSettings scenes if present, otherwise fall back to your test scene
|
||||
static string[] ScenesToBuild() =>
|
||||
EditorBuildSettings.scenes.Length > 0
|
||||
? EditorBuildSettings.scenes.Where(s => s.enabled).Select(s => s.path).ToArray()
|
||||
: new[] { "Assets/Scenes/TestScene.unity" };
|
||||
|
||||
[MenuItem("Build/Build Windows")]
|
||||
public static void BuildWindows()
|
||||
{
|
||||
string buildPath = "Builds/Windows";
|
||||
if (!Directory.Exists(buildPath))
|
||||
Directory.CreateDirectory(buildPath);
|
||||
var buildPath = "Builds/Windows";
|
||||
Directory.CreateDirectory(buildPath);
|
||||
|
||||
BuildPipeline.BuildPlayer(
|
||||
new[] { "Assets/Scenes/TestScene.unity" }, // Scenes to build
|
||||
Path.Combine(buildPath, "TestGame.exe"), // Output path
|
||||
ScenesToBuild(),
|
||||
Path.Combine(buildPath, "TestGame.exe"),
|
||||
BuildTarget.StandaloneWindows64,
|
||||
BuildOptions.None
|
||||
);
|
||||
@@ -21,15 +23,39 @@ public static class BuildScript
|
||||
[MenuItem("Build/Build Mac")]
|
||||
public static void BuildMac()
|
||||
{
|
||||
string buildPath = "Builds/Mac";
|
||||
if (!Directory.Exists(buildPath))
|
||||
Directory.CreateDirectory(buildPath);
|
||||
var buildPath = "Builds/Mac";
|
||||
Directory.CreateDirectory(buildPath);
|
||||
|
||||
BuildPipeline.BuildPlayer(
|
||||
new[] { "Assets/Scenes/TestScene.unity" },
|
||||
ScenesToBuild(),
|
||||
Path.Combine(buildPath, "TestGame.app"),
|
||||
BuildTarget.StandaloneOSX,
|
||||
BuildOptions.None
|
||||
);
|
||||
}
|
||||
|
||||
// ? New: CI-friendly Android build
|
||||
public static void BuildAndroidCI()
|
||||
{
|
||||
// Make sure we<77>re on the Android target (does nothing if already there)
|
||||
EditorUserBuildSettings.SwitchActiveBuildTarget(BuildTargetGroup.Android, BuildTarget.Android);
|
||||
|
||||
// Optional: ensure .apk (set to .aab if you want App Bundle)
|
||||
var buildDir = "Builds/Android";
|
||||
Directory.CreateDirectory(buildDir);
|
||||
var outputPath = Path.Combine(buildDir, "TestGame.apk");
|
||||
|
||||
// Optional CI toggles (strip development/build-report etc. if you prefer)
|
||||
var options = BuildOptions.None;
|
||||
|
||||
var report = BuildPipeline.BuildPlayer(
|
||||
ScenesToBuild(),
|
||||
outputPath,
|
||||
BuildTarget.Android,
|
||||
options
|
||||
);
|
||||
|
||||
if (report.summary.result != UnityEditor.Build.Reporting.BuildResult.Succeeded)
|
||||
throw new System.Exception("Android build failed: " + report.summary.result);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user