# GetAllBuildPhasesForTarget(string)

> Returns all build phases for the specified target.

## Definition

* **Type:** Method
* **Namespace:** [UnityEditor.iOS.Xcode](/engine/6000.6/script-reference/unityeditor/ios/xcode.md)
* **Assembly:** UnityEditor.iOS.Extensions.Xcode

```csharp
public string[] GetAllBuildPhasesForTarget(string targetGuid)
```

### Parameters

**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): The GUID of the target, such as the one returned by [PBXProject.TargetGuidByName](/engine/6000.6/script-reference/unityeditor/ios/xcode/pbxproject/targetguidbyname.md).

### Returns

| Type                                                               | Description                                               |
| ------------------------------------------------------------------ | --------------------------------------------------------- |
| [string\[\]](https://learn.microsoft.com/dotnet/api/system.string) | Returns all of the build phases for the specified target. |

### Remarks

You can query the type and name of each phase using [PBXProject.GetBuildPhaseType](/engine/6000.6/script-reference/unityeditor/ios/xcode/pbxproject/getbuildphasetype.md) and [PBXProject.GetBuildPhaseName](/engine/6000.6/script-reference/unityeditor/ios/xcode/pbxproject/getbuildphasename.md) respectively.

### Examples

```csharp
using UnityEngine;
using UnityEditor;
using System.IO;
using UnityEditor.Callbacks;
using UnityEditor.iOS.Xcode;

public class Sample_GetAllBuildPhasesForTarget  
{
    [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 GUID of the target you want
        string mainTargetGuid = pbxProject.GetUnityMainTargetGuid();

        // Retrieve the GUIDs of all Build Phases for the target and print their types and names to the Console
        string[] buildPhases = pbxProject.GetAllBuildPhasesForTarget(mainTargetGuid);
        foreach (string phaseGuid in buildPhases)
        {
            string phaseName = pbxProject.GetBuildPhaseName(phaseGuid);
            string phaseType = pbxProject.GetBuildPhaseType(phaseGuid);
            Debug.Log(string.Format("Name: {0} | Type: {1}", phaseName, phaseType));
        }
    }
}
```
