Skip to content

Instantly share code, notes, and snippets.

@CyraGames
Last active July 16, 2018 18:16
Show Gist options
  • Save CyraGames/a3019242ede4c09b76309c12bc94d8c6 to your computer and use it in GitHub Desktop.
Save CyraGames/a3019242ede4c09b76309c12bc94d8c6 to your computer and use it in GitHub Desktop.
Unity script to increment the version number each time the project is run in the editor, the version can be queried at run time with 'Application.version'.
// Minor adjustments by Arshd
// Version Incrementor Script for Unity by Francesco Forno (Fornetto Games)
// Inspired by http://forum.unity3d.com/threads/automatic-version-increment-script.144917/
// Modified by HJ
using UnityEditor;
using UnityEditor.Callbacks;
using UnityEngine;
using System;
[InitializeOnLoad]
public class VersionIncrement
{
static VersionIncrement()
{
EditorApplication.update += RunOnce;
}
static void RunOnce()
{
EditorApplication.update -= RunOnce;
IncreaseBuild();
}
static void IncrementVersion(int majorIncr, int minorIncr, int buildIncr)
{
string[] lines = PlayerSettings.bundleVersion.Split('.');
int MajorVersion = int.Parse(lines[0]) + majorIncr;
int MinorVersion = int.Parse(lines[1]) + minorIncr;
int Build = 0;
if (lines.Length > 2)
{
Build = int.Parse(lines[2]) + buildIncr;
}
string date = DateTime.Now.ToString("yyyyMMddhhmmss");
PlayerSettings.bundleVersion = MajorVersion.ToString("0") + "." +
MinorVersion.ToString("0") + "." +
Build.ToString("0") + "." + date;
//PlayerSettings.Android.bundleVersionCode = MajorVersion * 10000 + MinorVersion * 1000 + Build;
}
[MenuItem("Build/Increase Minor Version")]
private static void IncreaseMinor()
{
IncrementVersion(0, 1, 0);
}
[MenuItem("Build/Increase Major Version")]
private static void IncreaseMajor()
{
IncrementVersion(1, 0, 0);
}
private static void IncreaseBuild()
{
IncrementVersion(0, 0, 1);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment