Unity 6.3
0 онлайн 83 гостей 3 в системе
Вход

PBXProject.ReplaceFile

Declaration

public void ReplaceFile(string fileGuid, string path, iOS.Xcode.PBXSourceTree source);

Параметры

Параметр Описание
fileGuid GUID ссылки на файл.
путь Физический путь к новому файлу в файловой системе.
источник Дерево источника, к которому относится путь. По умолчанию это PBXSourceTree.Source. Дерево PBXSourceTree.Group не поддерживается.

Описание

Заменяет указанный файл новым.

Путь к указанному файлу заменяется, а GUID старого файла сохраняется.

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

public class Sample_ReplaceFile { [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 the target GUID string targetGuid = pbxProject.GetUnityMainTargetGuid();

// Get the GUID of the existing file you want to replace string existingFilePath = "Resources/oldExampleFile.txt"; string existingFileGuid = pbxProject.FindFileGuidByProjectPath(existingFilePath);

// Add the new file and get the GUID string newFilePath = "path/to/your/newExampleFile.txt"; string newFileGuid = pbxProject.AddFile(newFilePath, "Resources/newExampleFile.txt", PBXSourceTree.Source);

// Replace the existing file with the new file pbxProject.ReplaceFile(existingFileGuid, newFileGuid); // Apply changes to the pbxproj file pbxProject.WriteToFile(projectPath); } }