Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

PBXProjectExtensions.AddAppExtension

Объявление

public static string AddAppExtension(iOS.Xcode.PBXProject proj, string mainTargetGuid, string name, string bundleId, string infoPlistPath);

Параметры

proj Неявный параметр this для метода расширения.
mainTargetGuid GUID основной цели, с которой нужно связать приложение.
name Имя расширения приложения.
bundleId Идентификатор пакета расширения приложения. Идентификатор пакета должен начинаться с идентификатора пакета родительского приложения.
infoPlistPath Путь к документу Info.plist расширения приложения.

Возвращает

string GUID новой цели.

Описание

Создает ссылку на приложение.

using UnityEditor; using UnityEngine; using UnityEditor.iOS.Xcode; using UnityEditor.iOS.Xcode.Extensions; using System.IO; using UnityEditor.Callbacks; public class ScriptBatch : MonoBehaviour { [PostProcessBuild] private static void PostProcessBuild_iOS(BuildTarget target, string buildPath) { File.Copy("Assets/extension/TodayViewController.h", buildPath + "/appext/TodayViewController.h"); File.Copy("Assets/extension/TodayViewController.m", buildPath + "/appext/TodayViewController.m"); PBXProject proj = new PBXProject(); string projPath = PBXProject.GetPBXProjectPath(buildPath); proj.ReadFromFile(projPath); string targetGuid = proj.GetUnityFrameworkTargetGuid(); string newTarget = proj.AddAppExtension(targetGuid, "appext", "com.unity3d.product.appext", "appext/Info.plist"); proj.AddFileToBuild(newTarget, proj.AddFile(buildPath + "/appext/TodayViewController.h", "appext/TodayViewController.h")); proj.AddFileToBuild(newTarget, proj.AddFile(buildPath + "/appext/TodayViewController.m", "appext/TodayViewController.m")); proj.AddFrameworkToProject(newTarget, "NotificationCenter.framework", true); proj.WriteToFile(projPath); } }
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3