PBXProject.AddFolderReference

Declaration

public string AddFolderReference(string path, string projectPath, iOS.Xcode.PBXSourceTree sourceTree);

Parameters

path The physical path to the folder on the filesystem.
projectPath The project path to the folder.
sourceTree The source tree the path is relative to. PBXSourceTree.Source is set by default. PBXSourceTree.Group isn't supported.

Returns

string The GUID of the added folder reference. You can use it later, for example, to add the file for building to targets.

Description

Adds a new folder reference to the list of known files.

The group structure is automatically created to correspond to the project path. To add the folder reference to the list of files to build, pass the returned value to AddFileToBuild.

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

public class Sample_AddFolderReference { [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 for Main target string mainTargetGuid = pbxProject.GetUnityMainTargetGuid();

// Specify the file path you want to add to the Xcode project string filePath = Path.Combine(Application.dataPath, "Resources/");

// Add the 'Resources' directory to the Xcode project pbxProject.AddFile(filePath, "Resources");

// Apply changes to the pbxproj file pbxProject.WriteToFile(projectPath); } }

Did you find this page useful? Please give it a rating: