fix: 修复打包脚本中 VersionCode 生成缺少位数的 BUG
Signed-off-by: huyufei <yufei.hu@castbox.fm>
							parent
							
								
									91e873880b
								
							
						
					
					
						commit
						b186489a54
					
				|  | @ -87,10 +87,13 @@ namespace Guru.Editor | |||
| 		     | ||||
| 		    var isDebug = !buildParam.IsBuildRelease; | ||||
| 		    var useMinify = buildParam.AndroidUseMinify; | ||||
| 	        var buildNumber= GetBuildNumberString(BuildTarget.Android); | ||||
| 	        var buildNumber= GetPlayerSettingsBuildNumberStr(BuildTarget.Android); | ||||
| 	        var androidTargetVersion = buildParam.AndroidTargetVersion == 0 ? DefaultAndroidTargetSdkVersion : buildParam.AndroidTargetVersion; | ||||
| 	        if (buildParam.AutoSetBuildNumber) buildNumber = ChangeBuildNumber(BuildTarget.Android); | ||||
| 	         | ||||
| 	        if (buildParam.AutoSetBuildNumber) | ||||
| 	        { | ||||
| 		        buildNumber = CreateGuruBuildNumber(); | ||||
| 		        PlayerSettings.Android.bundleVersionCode = int.Parse(buildNumber); | ||||
| 	        } | ||||
| 			// 保存版本信息 | ||||
| 			SaveBuildVersion(buildParam.BuildVersion, buildNumber); | ||||
| 			 | ||||
|  | @ -293,8 +296,12 @@ namespace Guru.Editor | |||
| 	        ChangeBuildPlayerCommonSetting(buildParam, BuildTargetGroup.iOS); | ||||
| 	         | ||||
| 	        //修改打包版本号 | ||||
| 	        var buildNumber= GetBuildNumberString(BuildTarget.Android); | ||||
| 	        if(buildParam.AutoSetBuildNumber) buildNumber = ChangeBuildNumber(BuildTarget.iOS); | ||||
| 	        var buildNumber= GetPlayerSettingsBuildNumberStr(BuildTarget.Android); | ||||
| 	        if (buildParam.AutoSetBuildNumber) | ||||
| 	        { | ||||
| 		        buildNumber = CreateGuruBuildNumber(); | ||||
| 		        PlayerSettings.iOS.buildNumber = buildNumber; | ||||
| 	        } | ||||
| 	         | ||||
| 	        // 保存版本信息 | ||||
| 	        SaveBuildVersion(buildParam.BuildVersion, buildNumber); | ||||
|  | @ -437,19 +444,15 @@ namespace Guru.Editor | |||
| 	    /// 修改打包版本号 | ||||
| 	    /// </summary> | ||||
| 	    /// <param name="buildTarget"></param> | ||||
| 	    private static string ChangeBuildNumber(BuildTarget buildTarget) | ||||
| 	    private static string CreateGuruBuildNumber() | ||||
| 	    { | ||||
| 		    var nowDate = DateTime.Now; | ||||
| 		    string strBuildNumber = $"{nowDate.Year - 2000}{nowDate.Month:00}{nowDate.Day:00}{(nowDate.Hour * 60 + nowDate.Minute) / 15}"; | ||||
| 		    int buildNumber = int.Parse(strBuildNumber); | ||||
| 		    if (buildTarget == BuildTarget.iOS) | ||||
| 		    { | ||||
| 			    PlayerSettings.iOS.buildNumber = buildNumber.ToString(); | ||||
| 		    } | ||||
| 		    else if (buildTarget == BuildTarget.Android) | ||||
| 		    { | ||||
| 			    PlayerSettings.Android.bundleVersionCode = buildNumber; | ||||
| 		    } | ||||
| 		    string strYear = nowDate.Year.ToString().Substring(2); | ||||
| 		    string strMon = nowDate.Month.ToString("00"); | ||||
| 		    string strDay = nowDate.Day.ToString("00"); | ||||
| 		    string strQuarter = ((nowDate.Hour * 60 + nowDate.Minute) / 15).ToString("00"); | ||||
| 		    // 2024-08-01 08:00:00  to version string: 240801 | ||||
| 		    string strBuildNumber = $"{strYear}{strMon}{strDay}{strQuarter}"; | ||||
| 		    return strBuildNumber; | ||||
| 	    } | ||||
| 		 | ||||
|  | @ -457,7 +460,7 @@ namespace Guru.Editor | |||
| 	    /// 获取构建数变量 | ||||
| 	    /// </summary> | ||||
| 	    /// <returns></returns> | ||||
| 	    private static string GetBuildNumberString(BuildTarget buildTarget) | ||||
| 	    private static string GetPlayerSettingsBuildNumberStr(BuildTarget buildTarget) | ||||
| 	    { | ||||
| 		    if (buildTarget == BuildTarget.iOS) | ||||
| 		    { | ||||
|  | @ -528,7 +531,18 @@ namespace Guru.Editor | |||
| 
 | ||||
| 	    } | ||||
| 
 | ||||
| 
 | ||||
| 	    [Test] | ||||
| 	    public static void TEST_BuildVersionString() | ||||
| 	    { | ||||
| 		    var nowDate = new DateTime(2024, 8, 1, 0, 0, 0); | ||||
| 		    string strYear = nowDate.Year.ToString().Substring(2); | ||||
| 		    string strMon = nowDate.Month.ToString("00"); | ||||
| 		    string strDay = nowDate.Day.ToString("00"); | ||||
| 		    string strQuarter = ((nowDate.Hour * 60 + nowDate.Minute) / 15).ToString("00"); | ||||
| 		    // 2024-08-01 08:00:00  to version string: 240801 | ||||
| 		    string strBuildNumber = $"{strYear}{strMon}{strDay}{strQuarter}"; | ||||
| 		    Debug.Log($"Get BuildVersion Code: {strBuildNumber}"); | ||||
| 	    } | ||||
| 	    #endregion | ||||
| 	     | ||||
|     } | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue