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

PBXProject.AddShellScriptBuildPhase

Declaration

public string AddShellScriptBuildPhase(string targetGuid, string name, string shellPath, string shellScript);

Параметры

Параметр Описание
targetGuid GUID объекта, например, возвращаемый TargetGuidByName.
имя Имя фазы.
shellPath Путь оболочки.
shellScript Скрипт оболочки.

Возвращаемое значение

строка Возвращает GUID нового этапа.

Описание

Создает новую фазу скрипта оболочки копирования для заданного объекта.

Если фаза сборки скрипта оболочки с таким же именем, shellPathи shellScript уже настроена для цели, функция возвращает существующую фазу. Новая фаза помещается в конец списка фаз сборки, настроенных для цели.

Declaration

public string AddShellScriptBuildPhase(string targetGuid, string name, string shellPath, string shellScript, List<string> inputPaths);

Параметры

Параметр Описание
targetGuid GUID объекта, например, возвращаемый TargetGuidByName.
имя Имя фазы.
shellPath Путь оболочки.
shellScript Скрипт оболочки.
inputPaths Скрипт оболочки вводит зависимости.

Возвращаемое значение

строка Возвращает GUID нового этапа.

Описание

Создает новую фазу скрипта оболочки копирования для заданного объекта.

Если фаза сборки скрипта оболочки с таким же именем, shellPath, shellScriptи inputPaths уже настроена для цели, функция возвращает существующую фазу. Новая фаза помещается в конец списка фаз сборки, настроенных для цели.

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

public class Sample_AddShellScriptBuildPhase { [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 GUID of the target you want to add the Shell Script Phase to string mainTargetGuid = pbxProject.GetUnityMainTargetGuid();

// Add the Shell Script Phase to that target pbxProject.AddShellScriptBuildPhase(mainTargetGuid, "exampleScript1", "", "echo exampleCommand1");

// Optionally, add the Phase with Input Files listed pbxProject.AddShellScriptBuildPhase(mainTargetGuid, "exampleScript2", "", "echo exampleCommand2", new List<string>() { "InputFile1" });

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