GetPBXProjectPath(string)
Returns the path to PBX project in the given Unity build path.
Read time 1 minuteLast updated 12 days ago
Definition
- Type: Method
- Namespace: UnityEditor.iOS.Xcode
- Assembly: UnityEditor.iOS.Extensions.Xcode
public static string GetPBXProjectPath(string buildPath)
Parameters
The project build path.
Returns
Type | Description |
|---|---|
| string | The path to the PBX project file. This path can be opened later using the PBXProject.ReadFromFile function. |
Remarks
This function can only be used for Unity-generated projects.
Note: If a Unity project isn't automatically found, will return . This method won't return the correct path for an exported macOS project.
GetPBXProjectPathBUILDPATH/Unity-iPhone.xcodeproj/project.pbxprojExamples
using UnityEditor;using System.IO;using UnityEditor.Callbacks;using UnityEditor.iOS.Xcode;public class Sample_GetPBXProjectPath { [PostProcessBuild] public static void OnPostprocessBuild(BuildTarget buildTarget, string pathToBuiltProject) { // Stop processing if build target is not iOS if (buildTarget != BuildTarget.iOS) return; // Initialize PBXProject by using GetPBXProjectPath to create PBXProject object string projectPath = PBXProject.GetPBXProjectPath(pathToBuiltProject); PBXProject pbxProject = new PBXProject(); pbxProject.ReadFromFile(projectPath); // Get the GUID for the UnityFramework using it's name string unityFrameworkGuid = pbxProject.TargetGuidByName("UnityFramework"); // The unityFrameworkGuid can be used later to specify the UnityFramework as the target when manipulating the pbxproj file pbxProject.AddFrameworkToProject(unityFrameworkGuid, "Security.framework", false); pbxProject.SetBuildProperty(unityFrameworkGuid, "ENABLE_BITCODE", "NO"); // Apply changes to the pbxproj file pbxProject.WriteToFile(projectPath); }}