update: 添加 AppVersion 保存功能. 打包写入版本的功能
							parent
							
								
									b5576b12a3
								
							
						
					
					
						commit
						203263769e
					
				|  | @ -63,16 +63,19 @@ namespace Guru.Editor | |||
|         /// <returns></returns> | ||||
|         public static string BuildAndroid(AppBuildParam buildParam) | ||||
| 	    { | ||||
| 		    //切换平台 | ||||
| 		    // 切换平台 | ||||
| 		    SwitchBuildPlatform(BuildTarget.Android); | ||||
| 		    //打包通用设置 | ||||
| 		    // 打包通用设置 | ||||
| 		    ChangeBuildPlayerCommonSetting(buildParam, BuildTargetGroup.Android); | ||||
| 		     | ||||
| 		    var isDebug = !buildParam.IsBuildRelease; | ||||
| 		    var useMinify = buildParam.AndroidUseMinify; | ||||
| 	        var buildNumber= GetBuildNumberString(BuildTarget.Android); | ||||
| 			if(buildParam.AutoSetBuildNumber) buildNumber= ChangeBuildNumber(BuildTarget.Android); | ||||
| 			if(buildParam.AutoSetBuildNumber) buildNumber = ChangeBuildNumber(BuildTarget.Android); | ||||
| 	         | ||||
| 			// 保存版本信息 | ||||
| 			SaveBuildVersion(buildParam.BuildVersion, buildNumber); | ||||
| 			 | ||||
| 	        //android专用打包设置 | ||||
| 	        EditorUserBuildSettings.buildAppBundle = buildParam.IsBuildAAB; | ||||
| 	        EditorUserBuildSettings.development = isDebug; | ||||
|  | @ -180,7 +183,11 @@ namespace Guru.Editor | |||
| 	        ChangeBuildPlayerCommonSetting(buildParam, BuildTargetGroup.iOS); | ||||
| 	         | ||||
| 	        //修改打包版本号 | ||||
| 	        if(buildParam.AutoSetBuildNumber) ChangeBuildNumber(BuildTarget.iOS); | ||||
| 	        var buildNumber= GetBuildNumberString(BuildTarget.Android); | ||||
| 	        if(buildParam.AutoSetBuildNumber) buildNumber = ChangeBuildNumber(BuildTarget.iOS); | ||||
| 	         | ||||
| 	        // 保存版本信息 | ||||
| 	        SaveBuildVersion(buildParam.BuildVersion, buildNumber); | ||||
| 	         | ||||
| 	        var isDebug = !buildParam.IsBuildRelease; | ||||
| 
 | ||||
|  | @ -356,6 +363,12 @@ namespace Guru.Editor | |||
| 		    return ""; | ||||
| 	    } | ||||
| 
 | ||||
| 
 | ||||
| 	    private static void SaveBuildVersion(string version, string code) | ||||
| 	    { | ||||
| 		    GuruAppVersion.SaveToDisk(version, code); | ||||
| 	    } | ||||
| 
 | ||||
| 	    /// <summary> | ||||
| 	    /// 获取打包场景 | ||||
| 	    /// </summary> | ||||
|  |  | |||
|  | @ -0,0 +1,3 @@ | |||
| fileFormatVersion: 2 | ||||
| guid: a38c296b2ea541daae4ded28f1da8f87 | ||||
| timeCreated: 1710157153 | ||||
|  | @ -0,0 +1,3 @@ | |||
| fileFormatVersion: 2 | ||||
| guid: af28bbc1ddeb4338894259b071f3d15f | ||||
| timeCreated: 1710157167 | ||||
|  | @ -0,0 +1,78 @@ | |||
| using System.IO; | ||||
| using UnityEngine; | ||||
| 
 | ||||
| namespace Guru | ||||
| { | ||||
|     public class GuruAppVersion | ||||
|     { | ||||
|         public const string BuildInfoName = "build_info"; | ||||
| 
 | ||||
|         public string raw; | ||||
|         public string version; | ||||
|         public string code; | ||||
| 
 | ||||
|         public override string ToString() | ||||
|         { | ||||
|             return $"{version}-{code}"; | ||||
|         } | ||||
| 
 | ||||
|         /// <summary> | ||||
|         /// 初始化 | ||||
|         /// </summary> | ||||
|         public GuruAppVersion() | ||||
|         { | ||||
|             version = Application.version; | ||||
|             code = "unknown"; | ||||
|             raw = ""; | ||||
|         } | ||||
| 
 | ||||
|         /// <summary> | ||||
|         /// 初始化 | ||||
|         /// </summary> | ||||
|         /// <param name="version"></param> | ||||
|         /// <param name="code"></param> | ||||
|         public GuruAppVersion(string version, string code) | ||||
|         { | ||||
|             this.version = version; | ||||
|             this.code = code; | ||||
|         } | ||||
| 
 | ||||
|         public static GuruAppVersion Load() | ||||
|         { | ||||
|             var raw = Resources.Load<TextAsset>(BuildInfoName)?.text??""; | ||||
|             return GuruAppVersion.Parse(raw); | ||||
|         } | ||||
| 
 | ||||
|          | ||||
|         protected static GuruAppVersion Parse(string raw) | ||||
|         { | ||||
|             var a = new GuruAppVersion(); | ||||
|             if (!string.IsNullOrEmpty(raw)) | ||||
|             { | ||||
|                 a.raw = raw; | ||||
|                 var arr = raw.Split('-'); | ||||
|                 if (arr.Length > 0) a.version = arr[0]; | ||||
|                 if (arr.Length > 1) a.code = arr[1]; | ||||
|             } | ||||
|             return a; | ||||
|         } | ||||
| 
 | ||||
| 
 | ||||
|         /// <summary> | ||||
|         /// 保存至磁盘 | ||||
|         /// </summary> | ||||
|         /// <param name="version"></param> | ||||
|         /// <param name="code"></param> | ||||
|         public static void SaveToDisk(string version, string code) | ||||
|         { | ||||
|             var dir = $"{Application.dataPath}/Guru/Resources"; | ||||
|             if (!Directory.Exists(dir)) Directory.CreateDirectory(dir); | ||||
|             var path = $"{dir}/{BuildInfoName}.txt"; | ||||
|             File.WriteAllText(path,  $"{version}-{code}"); | ||||
|         } | ||||
| 
 | ||||
|     } | ||||
| 
 | ||||
| 
 | ||||
|   | ||||
| } | ||||
|  | @ -0,0 +1,3 @@ | |||
| fileFormatVersion: 2 | ||||
| guid: 657ac07c8fa7416d985f8919733ebbcc | ||||
| timeCreated: 1710155431 | ||||
		Loading…
	
		Reference in New Issue