PBXProject.UpdateBuildPropertyForConfig
Declaration
public void UpdateBuildPropertyForConfig(string configGuid, string name, IEnumerable<string> addValues, IEnumerable<string> removeValues);public void UpdateBuildPropertyForConfig(IEnumerable<string> configGuids, string name, IEnumerable<string> addValues, IEnumerable<string> removeValues);Параметры
| Параметр | Описание |
|---|---|
| configGuid | GUID конфигурации сборки, возвращенной BuildConfigByName. |
| configGuids | Массив GUIDs конфигураций сборки. |
| имя | Имя свойства сборки. |
| addValues | Значения, добавляемые в свойство построения. |
| removeValues | Значения, которые следует удалить из свойства построения. |
Описание
Добавление и удаление значений из свойства сборки в заданной конфигурации сборки.
using UnityEditor; using System.IO; using UnityEditor.Callbacks; using UnityEditor.iOS.Xcode;
public class Sample_UpdateBuildPropertyForConfig { [PostProcessBuild] public static void OnPostprocessBuild(BuildTarget buildTarget, string pathToBuiltProject) {
// Stop processing if build target is not iOS if (buildTarget != BuildTarget.iOS) return;
// Initialize PBXProject string projectPath = PBXProject.GetPBXProjectPath(pathToBuiltProject); PBXProject pbxProject = new PBXProject(); pbxProject.ReadFromFile(projectPath);
// Get the target GUID string mainTargetGuid = pbxProject.GetUnityMainTargetGuid();
// Get the GUID of the "Debug" config string configGuid = pbxProject.BuildConfigByName(mainTargetGuid, "Debug");
// Set up which property you will want to update, what values you want to add, and what values you want to remove string propertyName = "ON_DEMAND_RESOURCES_INITIAL_INSTALL_TAGS"; string[] newTags = new string[] { "newTag1", "newTag2", "newTag3"}; string[] oldTags = new string[] { "oldTag1", "oldTag2", "oldTag3"};
// Update the property using the UpdateBuildPropery function pbxProject.UpdateBuildPropertyForConfig(configGuid, propertyName, newTags, oldTags); // Apply changes to the pbxproj file pbxProject.WriteToFile(projectPath); } }