Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


ContainsFramework(string, string)

Checks whether the given system framework is a dependency of a target.
Read time 1 minuteLast updated 10 days ago

Definition

public bool ContainsFramework(string targetGuid, string framework)

Parameters

targetGuid

The GUID of the target, such as the one returned by PBXProject.TargetGuidByName.

framework

The name of the framework. The extension of the filename must be
.framework
.

Returns

Type

Description

boolReturns true if the given framework is a dependency of the given target.

Remarks

The function assumes system frameworks are located in
System/Library/Frameworks
in the SDK source tree.

Examples

using UnityEngine;using UnityEditor;using System.IO;using UnityEditor.Callbacks;using UnityEditor.iOS.Xcode;public class Sample_ContainsFramework { [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 GUID for Main target string mainTargetGuid = pbxProject.GetUnityMainTargetGuid(); // Check if the target contains the specified framework as a dependency string frameworkName = "ExampleFramework.framework"; if (pbxProject.ContainsFramework(mainTargetGuid, frameworkName)) { Debug.Log("Framework " + frameworkName + " was found."); // Continue your logic } else { Debug.Log("Framework " + frameworkName + " was not found."); } // If any changes were made to the PBXProject instance, apply changes to the pbxproj file pbxProject.WriteToFile(projectPath); }}