PBXProject.SetBaseReferenceForConfig
Declaration
public void SetBaseReferenceForConfig(string configGuid, string baseReference);Параметры
| Параметр | Описание |
|---|---|
| configGuid | GUID конфигурации сборки, возвращенной BuildConfigByName. |
| baseReference | GUID файла конфигурации, который будет использоваться в качестве базовой ссылки. |
Описание
Задает ссылку на базовую конфигурацию для указанной конфигурации сборки.
Примечание: Если baseReference параметр null, базовая ссылка удаляется.
using UnityEngine; using UnityEditor; using System.IO; using UnityEditor.Callbacks; using UnityEditor.iOS.Xcode;
public class Sample_SetBaseReferenceForConfig { [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();
// Retrieve the configuration name (this can be "Debug", "Release", or any custom configuration name) string configName = "Release";
// Get the "Release" build configuration GUID string configGuid = pbxProject.BuildConfigByName(mainTargetGuid, configName); // Add the file you will be using as base reference for the "Release" configuration // This example expects you having a "release.xcconfig" file in your project's "Assets/Resources/" directory string filePath = Path.Combine(Application.dataPath, "Resources/release.xcconfig"); string file = pbxProject.AddFile(filePath, "Configs/release.xcconfig", PBXSourceTree.Source); // Set the base configuration file using SetBaseReferenceForConfig pbxProject.SetBaseReferenceForConfig(configGuid, file); // Apply changes to the pbxproj file pbxProject.WriteToFile(projectPath); } }