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

AndroidProjectFilesModifierContext

класс в UnityEditor.Android

Описание

Представляет собой контейнер, который указывает дополнительные зависимости и дополнительные выходы для AndroidProjectFilesModifier.

using System.IO;
using Unity.Android.Gradle;
using UnityEditor;
using UnityEditor.Android;
using UnityEngine;

public class ModifyProjectScript : AndroidProjectFilesModifier { private string _myLibBuildGradle = Path.Combine("unityLibrary", "customPlugin", "build.gradle"); public override AndroidProjectFilesModifierContext Setup() { var projectFilesContext = new AndroidProjectFilesModifierContext(); // Tell the build system to expect a file to be produced in <gradleProject>/unityLibrary/customPlugin/build.gradle projectFilesContext.Outputs.AddBuildGradleFile(_myLibBuildGradle);

// Tell the build system that it should run OnModifyAndroidProjectFiles if MyConfig.json has changes since the last build projectFilesContext.Dependencies.DependencyFiles = new[] { "Assets/MyConfig.json" };

// Tell the build system to copy the directory to the Gradle project projectFilesContext.AddDirectoryToCopy("Assets/DirectoryToCopy", "destinationName");

// Pass some data/properties from the Editor to the OnModifyAndroidProjectFiles callback projectFilesContext.SetData("companyName", PlayerSettings.companyName); // Data can be any serializable object projectFilesContext.SetData<Vector2>("cursorHotspot", PlayerSettings.cursorHotspot);

return projectFilesContext; }

public override void OnModifyAndroidProjectFiles(AndroidProjectFiles projectFiles) { // Produce an object that will be serialized to <gradleProject>/unityLibrary/customPlugin/build.gradle var buildGradleFile = new ModuleBuildGradleFile(); buildGradleFile.Android.AndroidResources.NoCompress.Set(new []{"someValue"}); // Set the object that will be serialized to <gradleProject>/unityLibrary/customPlugin/build.gradle projectFiles.SetBuildGradleFile(_myLibBuildGradle, buildGradleFile);

// Do some changes based on MyConfig.json here // ...

// Get the data/properties that were declare in Setup var companyName = projectFiles.GetData("companyName"); var cursorHotspot = projectFiles.GetData<Vector2>("cursorHotspot"); // Do something based on the data // ... } }

Свойства

Свойство Описание
DependenciesПредставляет собой контейнер, который можно использовать для указания дополнительных зависимостей для процесса AndroidProjectFilesModifier.
OutputsПредставляет собой контейнер, который можно использовать для указания дополнительных файлов, которые будут созданы в AndroidProjectFilesModifier.OnModifyAndroidProjectFiles.

Конструкторы

Конструктор Описание
AndroidProjectFilesModifierContextКонтейнеростроитель.

Открытые методы

Метод Описание
AddDirectoryAsGuidToCopyЗаявление каталога для копирования в проект Gradle.
AddDirectoryToCopyЗаявление каталога для копирования в проект Gradle.
AddFileAsGuidToCopyЗаявление ассета для копирования в проект Gradle.
AddFileToCopyЗаявление файла для копирования в проект Gradle.
SetDataЗадает данные для обратного вызова OnModifyAndroidProjectFiles.