RunBeforeAssemblyAttribute Constructor
Declaration
public RunBeforeAssemblyAttribute(string assemblyName);Параметры
| Параметр | Описание |
|---|---|
| assemblyName | Имя сборки, которая должна быть вызвана после этого обратного вызова. |
Описание
Добавьте этот атрибут в метод обратного вызова, чтобы указать, что этот обратный вызов должен выполняться перед любыми обратными вызовами, которые являются частью указанной сборки.
Чтобы определить зависимости для обратного вызова, используйте следующие атрибуты:
- RunAfterClassAttribute, RunBeforeClassAttribute
- RunAfterAssemblyAttribute, RunBeforeAssemblyAttribute
- RunAfterPackageAttribute, RunBeforePackageAttribute
При вызове обратного вызова Unity создает граф зависимостей и использует топологическую сортировку для обеспечения того, чтобы все зависимости выполнялись в последовательности, основанной на их зависимостях. Если зависимости обратных вызовов не присутствуют в проекте, то инструкция будет проигнорирована во время создания графа зависимостей.
Примечание: Определение зависимостей обратного вызова в настоящее время поддерживается только обратным вызовом AssetPostprocessor.OnPostprocessAllAssets.
using UnityEditor; using UnityEditor.Callbacks; using UnityEngine;
// This example shows how to ensure that a callback is called before the Addressables assembly has been called. class MyPostprocessor : AssetPostprocessor { [RunBeforeAssembly("Unity.Addressables.Editor")] static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths) { Debug.Log("MyAllPostprocessor"); } }