BuildManifestObject
— это ScriptableObject, который вы можете использовать для доступа к значениям в Сборка манифеста с помощью скрипта без необходимости вручную загружать UnityCloudBuildManifest.json TextAsset.
Это необязательный параметр для предварительного экспорта, вызываемого Cloud Buildслужбой непрерывной интеграции для проектов Unity, которая автоматизирует процесс создания сборок на серверах Unity. Подробнее
См. в Словарь, если
UnityCloudBuildManifest.json TextAsset не был записан. Дополнительную информацию см. в разделе Проявить как JSON.
В следующем примере кода C# демонстрируется метод предварительного экспорта, который обновляет bundleVersion
в PlayerSettings
на основе buildNumber
указан в манифесте. Дополнительные сведения о методах предварительного экспорта см. в разделе Методы предварительного и последующего экспорта.
using UnityEngine;
using UnityEditor;
using System;
public class CloudBuildHelper : MonoBehaviour
{
#if UNITY_CLOUD_BUILD
public static void PreExport(UnityEngine.CloudBuild.BuildManifestObject manifest)
{
PlayerSettings.bundleVersion = string.Format("1.0.{0}", manifest.GetValue("buildNumber"));
}
#endif
}
Это общедоступный интерфейс для класса BuildManifestObject
:
namespace UnityEngine.CloudBuild
{
public class BuildManifestObject : ScriptableObject
{
// Try to get a manifest value - returns true if key was found and could be cast to type T, otherwise returns false.
public bool TryGetValue(string key, out T result);
// Retrieve a manifest value or throw an exception if the given key isn't found.
public T GetValue(string key);
// Set the value for a given key.
public void SetValue(string key, object value);
// Copy values from a dictionary. ToString() will be called on dictionary values before being stored.
public void SetValues(Dictionary sourceDict);
// Remove all key/value pairs.
public void ClearValues();
// Return a dictionary that represents the current BuildManifestObject.
public Dictionary ToDictionary();
// Return a JSON formatted string that represents the current BuildManifestObject
public string ToJson();
// Return an INI formatted string that represents the current BuildManifestObject
public override string ToString();
}
}