PBXProject.AddFile

Declaration

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

Parameters

path The physical path to the file on the filesystem.
projectPath The project path to the file as viewed in Xcode.
sourceTree The source tree the path is relative to. By default it's PBXSourceTree.Source. Note: PBXSourceTree.Group tree is not supported.

Returns

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

Description

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

The group structure is automatically created to correspond to the project path. To add the file 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_AddFile { [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);

// Specify the file path you want to add to the Xcode project string filePath = Path.Combine(Application.dataPath, "Resources/InputFile.txt"); // Add the file to the 'Resources' subfolder in the Xcode project pbxProject.AddFile(filePath, "Resources/InputFile.txt");

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

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