static QuickBuild() { AndroidBuildSchema = new BuildPlatformSchema { BuildTarget = BuildTarget.Android, BuildTargetGroup = BuildTargetGroup.Android, ProcessPackagePath = (fileName) => fileName + ".apk", OnPreBuild = (buildConfig) => { PlayerSettings.keystorePass = CompanyName; PlayerSettings.keyaliasPass = CompanyName; PlayerSettings.Android.bundleVersionCode = buildConfig.BundleVersionCode; }, }; IOSBuildSchema = new BuildPlatformSchema { BuildTarget = BuildTarget.iOS, BuildTargetGroup = BuildTargetGroup.iOS, ProcessPackagePath = (fileName) => fileName, // Folder OnPreBuild = null, }; WinBuildSchema = new BuildPlatformSchema { BuildTarget = BuildTarget.StandaloneWindows64, BuildTargetGroup = BuildTargetGroup.Standalone, ProcessPackagePath = (fileName) => string.Format("{0}/{0}.exe", fileName), OnPreBuild = null, }; }
private static void Build(BuildPlatformSchema schema, BuildConfig config, string buildComment) { // Validate folder path if (!EditorHelper.ValidateFolder(OutputFolder)) { ChangeOutputFolderPath(); return; } string packageName; // Set package name if (!string.IsNullOrEmpty(buildComment)) { packageName = string.Format("{0}_{1}_{2}", config.ProductName, DateTimeUtils.StandardTimeStr, buildComment); } else { packageName = string.Format("{0}_{1}", config.ProductName, DateTimeUtils.StandardTimeStr); } // Update runtime config config.PackageName = packageName; CreateConfig(BuildConfig.RuntimeAssetConfigPath, config); // Set define symbols PlayerSettings.SetScriptingDefineSymbolsForGroup(schema.BuildTargetGroup, config.GetDefineStr()); // Set basic product info PlayerSettings.companyName = CompanyName; PlayerSettings.applicationIdentifier = config.BundleIdentifier; PlayerSettings.productName = config.ProductName; PlayerSettings.bundleVersion = config.BundleVersion; PlayerSettings.iOS.appleDeveloperTeamID = "WBHCY56HJ5"; if (schema.OnPreBuild != null) { schema.OnPreBuild(config); } // Prepare output path var packagePath = string.Format("{0}/{1}/{2}", OutputFolder, schema.BuildTarget, schema.ProcessPackagePath(packageName)); EditorHelper.PreparePathDirectory(packagePath); // Save as last configuration before building LastBuildName = packageName; LastBuildPath = packagePath; GetShellParam(); // Building... var result = BuildPipeline.BuildPlayer(GetBuildScenes(), packagePath, schema.BuildTarget, GetBuildOptions()); if (string.IsNullOrEmpty(result)) { //Debug.Log("Build complete!"); // RevealInFinder after build complete EditorUtility.RevealInFinder(packagePath); } else { //Debug.Log("Build error occur!"); //Debug.LogError(result); } }