path | The project path of the file. |
bool Returns true if the project contains the file.
Checks if the project contains a file with the given project path.
using UnityEngine; using UnityEditor; using System.IO; using UnityEditor.Callbacks; using UnityEditor.iOS.Xcode;
public class Sample_ContainsFileByProjectPath { [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);
string fileToSearch = "Path/To/File/ExamplePlugin.mm";
// Check if the project contains a file by using a path relative to the Xcode project structure if (pbxProject.ContainsFileByProjectPath(fileToSearch)) { Debug.Log("File " + fileToSearch + " was found."); // Continue your logic } else { Debug.Log("File " + fileToSearch + " was not found."); }
// If any changes were made to the PBXProject instance, apply changes to the pbxproj file pbxProject.WriteToFile(projectPath); } }