Script hooks allow you to run custom scripts or Editor code before the build starts or after it is completed.
The pre- and post-export methods let you trigger actions before and after your Unity Project is built. These methods must exist as code in your Project in the Assets/Editor folder. If the Editor folder doesn’t exist in your directory, create it.
Important: The UnityEngine.CloudBuild.BuildManifestObject class is only available when running in Cloud Build (as in, not locally). To compile your code locally, wrap your pre- and post-export methods in an #if UNITY_CLOUD_BUILD
block.
You set pre- and post-export methods in the build target’s Advanced Options.
To use a pre-export method, create a public static method in your Unity Project that contains the code you want executed before the Unity Editor exports your project but after the Unity Editor script compilation phase.
public static void PreExport()
通过将 BuildManifestObject 对象指定为方法签名中的参数,即可使 Cloud Build 将当前编译的编译清单传递到导出前方法。随后可以在导出项目之前更改项目设置或 Player 设置。
public static void PreExport(UnityEngine.CloudBuild.BuildManifestObject manifest)
Unity Cloud Build 调用该方法时,它会将 BuildManifestObject 对象作为可选参数传递(其中的 BuildManifestObject 是当前编译的编译清单)。
有关更多信息,请参阅 ScriptableObject 格式的编译清单。
To use the post-export method, create a public static method in your Unity Project that contains the code you want executed after the Unity Editor exports your Project.
public static void PostExport(string exportPath)
Unity Cloud Build 调用该方法时,它将传递字符串:
Note: If you’ve tagged any methods in your code with the Unity PostProcessBuildAttribute, those methods are executed before any methods configured as post-export methods in Unity Cloud Build.
Using Cloud Build, you can create custom scripting #define directives. On the Unity Developer website, go to the build target’s Advanced Options.
In the Scripting Define Symbols field, you can add your own custom scripting #define directives to the built-in selection available. For each build target, enter the names of the symbols you want to define. You can then use these symbols as the conditions in #if directives, just like the built-in symbols. For more information, see Conditional Compilation.