update: 添加 AppVersion 保存功能. 打包写入版本的功能

deeplink
胡宇飞 2024-03-11 20:10:35 +08:00
parent b5576b12a3
commit 203263769e
5 changed files with 104 additions and 4 deletions

View File

@ -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>

3
Runtime/Utils.meta Normal file
View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: a38c296b2ea541daae4ded28f1da8f87
timeCreated: 1710157153

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: af28bbc1ddeb4338894259b071f3d15f
timeCreated: 1710157167

View File

@ -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}");
}
}
}

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 657ac07c8fa7416d985f8919733ebbcc
timeCreated: 1710155431