Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


GetPBXProjectPath(string)

Returns the path to PBX project in the given Unity build path.
Read time 1 minuteLast updated 12 days ago

Definition

public static string GetPBXProjectPath(string buildPath)

Parameters

buildPath

The project build path.

Returns

Type

Description

stringThe 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,
GetPBXProjectPath
will return
BUILDPATH/Unity-iPhone.xcodeproj/project.pbxproj
. This method won't return the correct path for an exported macOS project.

Examples

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); }}