├── .DS_Store ├── .gitignore ├── Assets ├── UniVersionManager.meta └── UniVersionManager │ ├── Plugins.meta │ ├── Plugins │ ├── UniVersionManager.jar │ ├── UniVersionManager.jar.meta │ ├── uniVersionManageriOS.mm │ └── uniVersionManageriOS.mm.meta │ ├── UniVersionManager.cs │ ├── UniVersionManager.cs.meta │ ├── sample.meta │ └── sample │ ├── SampleScript.cs │ ├── SampleScript.cs.meta │ ├── sample.unity │ └── sample.unity.meta ├── LICENSE ├── ProjectSettings ├── AudioManager.asset ├── ClusterInputManager.asset ├── DynamicsManager.asset ├── EditorBuildSettings.asset ├── EditorSettings.asset ├── GraphicsSettings.asset ├── InputManager.asset ├── NavMeshAreas.asset ├── NetworkManager.asset ├── Physics2DSettings.asset ├── ProjectSettings.asset ├── ProjectVersion.txt ├── QualitySettings.asset ├── TagManager.asset ├── TimeManager.asset ├── UnityAdsSettings.asset └── UnityConnectSettings.asset ├── README.md └── dist ├── .DS_Store └── UniVersionManager.unitypackage /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/.DS_Store -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /[Ll]ibrary/ 2 | /[Tt]emp/ 3 | /[Oo]bj/ 4 | /[Bb]uild/ 5 | 6 | # Autogenerated VS/MD solution and project files 7 | *.csproj 8 | *.unityproj 9 | *.sln 10 | *.suo 11 | *.tmp 12 | *.user 13 | *.userprefs 14 | *.pidb 15 | *.booproj 16 | 17 | # Unity3D generated meta files 18 | *.pidb.meta 19 | 20 | # Unity3D Generated File On Crash Reports 21 | sysinfo.txt -------------------------------------------------------------------------------- /Assets/UniVersionManager.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1a12a2dc280e34ee19e23230f97a24c7 3 | folderAsset: yes 4 | timeCreated: 1443883645 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/UniVersionManager/Plugins.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 739f69d106e17464e9796208e0b7ffa4 3 | folderAsset: yes 4 | timeCreated: 1443883653 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/UniVersionManager/Plugins/UniVersionManager.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/Assets/UniVersionManager/Plugins/UniVersionManager.jar -------------------------------------------------------------------------------- /Assets/UniVersionManager/Plugins/UniVersionManager.jar.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bb59491189cf344d8bcd68934c317a0d 3 | timeCreated: 1462090951 4 | licenseType: Free 5 | PluginImporter: 6 | serializedVersion: 1 7 | iconMap: {} 8 | executionOrder: {} 9 | isPreloaded: 0 10 | platformData: 11 | Any: 12 | enabled: 1 13 | settings: {} 14 | userData: 15 | assetBundleName: 16 | assetBundleVariant: 17 | -------------------------------------------------------------------------------- /Assets/UniVersionManager/Plugins/uniVersionManageriOS.mm: -------------------------------------------------------------------------------- 1 | extern "C" 2 | { 3 | char* MakeStringCopy (const char* string) 4 | { 5 | if (string == NULL) 6 | return NULL; 7 | 8 | char* res = (char*)malloc(strlen(string) + 1); 9 | strcpy(res, string); 10 | return res; 11 | } 12 | 13 | char* GetVersionName_() 14 | { 15 | NSString *buildNo = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"]; 16 | return MakeStringCopy( [buildNo UTF8String] ); 17 | } 18 | 19 | char* GetBuildVersionName_() 20 | { 21 | NSString *buildNo = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"]; 22 | return MakeStringCopy( [buildNo UTF8String] ); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /Assets/UniVersionManager/Plugins/uniVersionManageriOS.mm.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b4da77f7f2fb44cdfa2ec44a3003c771 3 | timeCreated: 1443888560 4 | licenseType: Free 5 | PluginImporter: 6 | serializedVersion: 1 7 | iconMap: {} 8 | executionOrder: {} 9 | isPreloaded: 0 10 | platformData: 11 | Any: 12 | enabled: 1 13 | settings: {} 14 | userData: 15 | assetBundleName: 16 | assetBundleVariant: 17 | -------------------------------------------------------------------------------- /Assets/UniVersionManager/UniVersionManager.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System; 3 | using System.Runtime.InteropServices; 4 | #if UNITY_EDITOR 5 | using UnityEditor; 6 | #endif 7 | 8 | public static class UniVersionManager 9 | { 10 | 11 | #if UNITY_IOS 12 | [DllImport("__Internal")] 13 | private static extern string GetVersionName_(); 14 | [DllImport("__Internal")] 15 | private static extern string GetBuildVersionName_ (); 16 | #endif 17 | 18 | public static string GetVersion () 19 | { 20 | #if UNITY_EDITOR 21 | return PlayerSettings.bundleVersion; 22 | #elif UNITY_IOS 23 | return GetVersionName_(); 24 | #elif UNITY_ANDROID 25 | AndroidJavaObject ajo = new AndroidJavaObject("net.sanukin.UniVersionManager"); 26 | return ajo.CallStatic("GetVersionName"); 27 | #else 28 | return "0"; 29 | #endif 30 | } 31 | 32 | public static string GetBuildVersion(){ 33 | #if UNITY_EDITOR 34 | return PlayerSettings.bundleVersion; 35 | #elif UNITY_IOS 36 | return GetBuildVersionName_(); 37 | #elif UNITY_ANDROID 38 | AndroidJavaObject ajo = new AndroidJavaObject("net.sanukin.UniVersionManager"); 39 | return ajo.CallStatic("GetVersionCode").ToString (); 40 | #else 41 | return "0"; 42 | #endif 43 | } 44 | 45 | public static bool IsNewVersion (string targetVersion) 46 | { 47 | var current = new Version(GetVersion()); 48 | var target = new Version(targetVersion); 49 | return current.CompareTo(target) < 0; 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /Assets/UniVersionManager/UniVersionManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2b95c914dfb864a99a31f1113d59ac84 3 | timeCreated: 1443883662 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/UniVersionManager/sample.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1143b09feb5954450b7430d919dfdac9 3 | folderAsset: yes 4 | timeCreated: 1443884161 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/UniVersionManager/sample/SampleScript.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine.UI; 2 | using UnityEngine; 3 | using System.Collections; 4 | 5 | public class SampleScript : MonoBehaviour 6 | { 7 | [SerializeField] Text versionText; 8 | [SerializeField] Text buildVersionText; 9 | 10 | public void Start () 11 | { 12 | versionText.text = string.Format ("Version: {0}", UniVersionManager.GetVersion ()); 13 | buildVersionText.text = string.Format ("Build Version: {0}", UniVersionManager.GetBuildVersion ()); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Assets/UniVersionManager/sample/SampleScript.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 733972880ef164ea18d99e20feb3e6ae 3 | timeCreated: 1443884176 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/UniVersionManager/sample/sample.unity: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/Assets/UniVersionManager/sample/sample.unity -------------------------------------------------------------------------------- /Assets/UniVersionManager/sample/sample.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9f0096d1641b546f49d869b805f679c4 3 | timeCreated: 1443884151 4 | licenseType: Free 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 wataru.sanuki 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/ProjectSettings/AudioManager.asset -------------------------------------------------------------------------------- /ProjectSettings/ClusterInputManager.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/ProjectSettings/ClusterInputManager.asset -------------------------------------------------------------------------------- /ProjectSettings/DynamicsManager.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/ProjectSettings/DynamicsManager.asset -------------------------------------------------------------------------------- /ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/ProjectSettings/EditorBuildSettings.asset -------------------------------------------------------------------------------- /ProjectSettings/EditorSettings.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/ProjectSettings/EditorSettings.asset -------------------------------------------------------------------------------- /ProjectSettings/GraphicsSettings.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/ProjectSettings/GraphicsSettings.asset -------------------------------------------------------------------------------- /ProjectSettings/InputManager.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/ProjectSettings/InputManager.asset -------------------------------------------------------------------------------- /ProjectSettings/NavMeshAreas.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/ProjectSettings/NavMeshAreas.asset -------------------------------------------------------------------------------- /ProjectSettings/NetworkManager.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/ProjectSettings/NetworkManager.asset -------------------------------------------------------------------------------- /ProjectSettings/Physics2DSettings.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/ProjectSettings/Physics2DSettings.asset -------------------------------------------------------------------------------- /ProjectSettings/ProjectSettings.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/ProjectSettings/ProjectSettings.asset -------------------------------------------------------------------------------- /ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 5.3.4f1 2 | m_StandardAssetsVersion: 0 3 | -------------------------------------------------------------------------------- /ProjectSettings/QualitySettings.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/ProjectSettings/QualitySettings.asset -------------------------------------------------------------------------------- /ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/ProjectSettings/TagManager.asset -------------------------------------------------------------------------------- /ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/ProjectSettings/TimeManager.asset -------------------------------------------------------------------------------- /ProjectSettings/UnityAdsSettings.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/ProjectSettings/UnityAdsSettings.asset -------------------------------------------------------------------------------- /ProjectSettings/UnityConnectSettings.asset: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/ProjectSettings/UnityConnectSettings.asset -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # UniVersionManager 2 | 3 | ## Overview 4 | Simple Version Getter for Unity, it can be used for iOS, Android and unity editor platform. 5 | It can also get build version. 6 | 7 | ## Usage 8 | To get application version 9 | ```cs 10 | UniVersionManager.GetVersion(); 11 | ``` 12 | To compare version 13 | ```cs 14 | var newVersion = "1.0.1"; 15 | if(UniVersionManager.IsNewVersion(newVersion)){ 16 | // Update your application 17 | } 18 | ``` 19 | To get application build version 20 | ```cs 21 | UniVersionManager.GetBuildVersion(); 22 | ``` 23 | 24 | ## Install 25 | Use unitypackage under dist folder. 26 | 27 | ## Licence 28 | 29 | [MIT](https://github.com/tcnksm/tool/blob/master/LICENCE) 30 | 31 | ## Author 32 | 33 | [sanukin39](https://github.com/sanukin39) 34 | -------------------------------------------------------------------------------- /dist/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/dist/.DS_Store -------------------------------------------------------------------------------- /dist/UniVersionManager.unitypackage: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sanukin39/UniVersionManager/dda424ff146c674a804c381c97cd83735d465123/dist/UniVersionManager.unitypackage --------------------------------------------------------------------------------