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

PBXProject.AddFrameworkToProject

Declaration

public void AddFrameworkToProject(string targetGuid, string framework, bool weak);

Параметры

Параметр Описание
targetGuid GUID конфигурации сборки, возвращенной TargetGuidByName.
рамочная программа Имя фрейма. Расширение имени файла должно быть .framework.
слабый True, если фреймворк необязателен, например, если он слабо связан, и false, если фреймворк необходим.

Описание

Добавление зависимости системной платформы для указанного конечного объекта.

Функция предполагает, что системные фреймворки находятся в папке System/Library/Frameworksв дереве исходных кодов SDK. Фреймворк добавляется в логическую папку Frameworks в проекте.

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

public class Sample_AddFrameworkToProject {

[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 GUIDs for UnityFramework and Main targets string unityFrameworkTargetGuid = pbxProject.GetUnityFrameworkTargetGuid(); string mainTargetGuid = pbxProject.GetUnityMainTargetGuid();

// Add a required framework to UnityFramework target pbxProject.AddFrameworkToProject(unityFrameworkTargetGuid, "CoreBluetooth.framework", false);

// Add an optional framework to main target pbxProject.AddFrameworkToProject(mainTargetGuid, "MapKit.framework", true);

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