PBXProject.ContainsFileByRealPath
Declaration
public bool ContainsFileByRealPath(string path);public bool ContainsFileByRealPath(string path, iOS.Xcode.PBXSourceTree sourceTree);Параметры
| Параметр | Описание |
|---|---|
| путь | Физический путь к файлу. |
| sourceTree | Путь исходного дерева, относительно которого находится файл. Дерево PBXSourceTree.Group не поддерживается. |
Возвращаемое значение
логическое Возвращает true, если проект содержит файл, false в противном случае.
Описание
Проверяет, содержит ли проект файл с указанным физическим путем.
Версия без аргумента исходного дерева ищет по всем абсолютным деревьям. Используйте эту перегрузку с осторожностью.
using UnityEngine; using UnityEditor; using System.IO; using UnityEditor.Callbacks; using UnityEditor.iOS.Xcode;
public class Sample_ContainsFileByRealPath { [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 it's real path if (pbxProject.ContainsFileByRealPath(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);
} }