版本:Unity 6 (6000.0)
语言English
  • C#

AndroidProjectFilesModifierContext

UnityEditor.Android 中的类

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实会阅读用户提出的每个建议更改,并在适用时进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

描述

表示一个容器,用于指定 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 // ... } }

属性

依赖项表示一个容器,您可以使用它来指定 AndroidProjectFilesModifier 进程依赖的其他依赖项。
输出表示一个容器,您可以使用它来指定将在 AndroidProjectFilesModifier.OnModifyAndroidProjectFiles 中创建的其他文件。

构造函数

AndroidProjectFilesModifierContext容器构造函数。

公共方法

AddDirectoryAsGuidToCopy声明一个要复制到 Gradle 项目中的目录。
AddDirectoryToCopy声明一个要复制到 Gradle 项目中的目录。
AddFileAsGuidToCopy声明一个要复制到 Gradle 项目中的资源。
AddFileToCopy声明一个要复制到 Gradle 项目中的文件。
SetData为 OnModifyAndroidProjectFiles 回调设置数据。