Объявление
public RunAfterPackageAttribute(string packageName);Параметры
packageName | Имя пакета, который должен быть запущен перед этим обратным вызовом. |
Описание
Добавьте этот атрибут в метод обратного вызова, чтобы отметить, что этот обратный вызов должен выполняться после любых обратных вызовов, которые являются частью указанного пакета.
Чтобы определить зависимости для обратного вызова, используйте следующие атрибуты:
- RunAfterClassAttribute, RunBeforeClassAttribute
- RunAfterAssemblyAttribute, RunBeforeAssemblyAttribute
- RunAfterPackageAttribute, RunBeforePackageAttribute
При вызове обратного вызова Unity создает граф зависимостей и использует топологическую сортировку, чтобы убедиться, что все зависимости выполняются последовательно на основе их зависимостей. Если в проекте нет зависимостей обратных вызовов, то инструкция будет проигнорирована при создании графа зависимостей.
Примечание. Определение зависимостей обратного вызова в настоящее время поддерживается только обратным вызовом AssetPostprocessor.OnPostprocessAllAssets.
using UnityEditor;
using UnityEditor.Callbacks;
// This will be run between the Addressables and Localization packages.
class Example : AssetPostprocessor
{
[RunAfterPackage("com.unity.addressables")]
[RunBeforePackage("com.unity.localization")]
static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths)
{
}
}