/// <summary> /// Prints the values of a <see cref="BuildPlayerSettings"/> instance. /// </summary> /// <param name="settings">The build player settings instance.</param> /// <param name="stringBuilder">The string builder instance.</param> public static void Print(BuildPlayerSettings settings, StringBuilder stringBuilder) { const string listItemPrefix = " - "; stringBuilder.AppendLine(string.Format("EditorUserBuildSettings.activeBuildTarget = {0} ({1})", settings.Target, settings.TargetGroup)); stringBuilder.AppendLine(string.Format("PlayerSettings.applicationIdentifier = {0}", settings.ApplicationIdentifier)); stringBuilder.AppendLine(string.Format("PlayerSettings.bundleVersion = {0}", settings.BundleVersion)); if (!string.IsNullOrEmpty(settings.AndroidKeyAliasName) || !string.IsNullOrEmpty(settings.AndroidKeyStoreName)) { stringBuilder.AppendLine(string.Format("EditorPrefs.AndroidSdkRoot: {0}", settings.AndroidSdkPath)); stringBuilder.AppendLine("PlayerSettings.Android:"); stringBuilder.AppendLine(string.Format(" - KeyAliasName: {0}", settings.AndroidKeyAliasName)); stringBuilder.AppendLine(string.Format(" - KeyAliasPass: {0}", settings.AndroidKeyAliasPass)); stringBuilder.AppendLine(string.Format(" - KeyStoreName: {0}", settings.AndroidKeyStoreName)); stringBuilder.AppendLine(string.Format(" - KeyStorePass: {0}", settings.AndroidKeyStorePass)); } if (!string.IsNullOrEmpty(settings.OutputPath)) { stringBuilder.AppendLine(string.Format("OutputPath: {0}", settings.OutputPath)); } if (settings.Levels != null && settings.Levels.Length > 0) { stringBuilder.AppendLine(string.Format("Levels:\n{0}{1}", listItemPrefix, string.Join( string.Format("\n{0}", listItemPrefix), settings.Levels))); } if (settings.Options != BuildOptions.None) { stringBuilder.AppendLine(string.Format("Options: {0}", settings.Options)); } }
/// <inheritdoc /> /// <summary> /// Creates an instance of <see cref="T:UnityCommandLine.BuildPipeline.BuildPlayerCommandBase" />. /// </summary> /// <param name="target">The build target.</param> protected BuildPlayerCommandBase(BuildTarget target) { _backupSettings = BuildPlayerSettings.Create(); Settings = BuildPlayerSettings.Create(); Settings.Target = target; if (!IsBuildTargetSupported(Settings.TargetGroup, Settings.Target)) { throw new Exception(string.Format("Build target '{0}' is not supported on this editor.", target)); } }
/// <summary> /// Applies the values of a <see cref="BuildPlayerSettings"/> instance to <see cref="EditorUserBuildSettings"/> and <see cref="PlayerSettings"/>. /// </summary> /// <param name="settings">The build player settings instance.</param> public static void Apply(BuildPlayerSettings settings) { var targetGroup = BuildTargetUtils.GetBuildTargetGroup(settings.Target); EditorUserBuildSettings.SwitchActiveBuildTarget(targetGroup, settings.Target); PlayerSettings.SetApplicationIdentifier(targetGroup, settings.ApplicationIdentifier); PlayerSettings.bundleVersion = settings.BundleVersion; EditorPrefs.SetString("AndroidSdkRoot", settings.AndroidSdkPath); PlayerSettings.Android.keyaliasName = settings.AndroidKeyAliasName; PlayerSettings.Android.keyaliasPass = settings.AndroidKeyAliasPass; PlayerSettings.Android.keystoreName = settings.AndroidKeyStoreName; PlayerSettings.Android.keystorePass = settings.AndroidKeyStorePass; }
/// <summary> /// Print a <see cref="Settings"/> object. /// </summary> /// <param name="settings">The build player settings object.</param> /// <param name="title">The title.</param> private static void PrintSettings(BuildPlayerSettings settings, string title = null) { var stringBuilder = new StringBuilder(); stringBuilder.AppendLine(UnityCommandLine.Values.SEPARATOR); if (!string.IsNullOrEmpty(title)) { stringBuilder.AppendLine(title); } BuildPlayerSettings.Print(settings, stringBuilder); stringBuilder.AppendLine(UnityCommandLine.Values.SEPARATOR); PrintLine(stringBuilder.ToString()); }
BuildPlayer(BuildPlayerSettings settings) { return(UBuildPipeline.BuildPlayer(settings.Levels, settings.OutputPath, settings.Target, settings.Options)); }