UpdateBuildPropertyForConfig
Adds and removes values from a build property in the given build configuration.
Read time 2 minutesLast updated 10 days ago
Definition
- Type: Method
- Namespace: UnityEditor.iOS.Xcode
- Assembly: UnityEditor.iOS.Extensions.Xcode
UpdateBuildPropertyForConfig(string, string, IEnumerable<string>, IEnumerable<string>)
Adds and removes values from a build property in the given build configuration.
public void UpdateBuildPropertyForConfig(string configGuid, string name, IEnumerable<string> addValues, IEnumerable<string> removeValues)
Parameters
The GUID of the build configuration as returned by PBXProject.BuildConfigByName.
The name of the build property.
The values to add to the build property.
The values to remove from the build property.
Examples
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); }}
UpdateBuildPropertyForConfig(IEnumerable<string>, string, IEnumerable<string>, IEnumerable<string>)
Adds and removes values from a build property in the given build configuration.
public void UpdateBuildPropertyForConfig(IEnumerable<string> configGuids, string name, IEnumerable<string> addValues, IEnumerable<string> removeValues)
Parameters
An array of GUIDs of build configurations.
The name of the build property.
The values to add to the build property.
The values to remove from the build property.
Examples
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); }}