Version: 2020.3
언어: 한국어
JSON 형식으로 매니페스트 빌드
예약된 빌드

ScriptableObject 형식으로 매니페스트 빌드

BuildManifestObject는 수동으로 UnityCloudBuildManifest.json TextAsset을 로드할 필요 없이 스크립트를 통하여 매니페스트 빌드의 값에 액세스할 수 있는 ScriptableObject입니다.

만약 UnityCloudBuildManifest.json TextAsset이 작성되지 않은 경우(JSON 형식 매니페스트문서 참조), 이 값은 Unity 클라우드 빌드가 익스포트 이전에 호출하는 옵션적인 파라미터가 됩니다.

다음의 C# 코드 예제는 매니페스트에서 제공된 buildNumber를 기반으로 bundleVersionPlayerSettings를 업데이트하는 선처리 익스포트 메서드를 보여줍니다. 선처리 익스포트 메서드에 대한 자세한 내용은 선처리 및 후처리 메서드 페이지를 참조하십시오.

using UnityEngine;
using UnityEditor;
using System;

public class CloudBuildHelper : MonoBehaviour
{
    public static void PreExport(UnityEngine.CloudBuild.BuildManifestObject manifest)
    {
        PlayerSettings.bundleVersion = String.Format("1.0.{0}", manifest.GetValue("buildNumber", "unknown"));
    }
}

다음은 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<T>(string key, out T result);
        // Retrieve a manifest value or throw an exception if the given key isn't found.
        public T GetValue<T>(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<string, object> sourceDict);
        // Remove all key/value pairs.
        public void ClearValues();
        // Return a dictionary that represents the current BuildManifestObject.
        public Dictionary<string, object> 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();
    }
}
JSON 형식으로 매니페스트 빌드
예약된 빌드