
UnityEditor 実行時、または Addressables ビルド終了時に特定のバッチ処理を行いたい場合、以下のイベントを Assets/Editor/ フォルダに含めましょう。
なお、このイベントは Addressables を使用していなければ使うことができません。
(using UnityEditor.AddressableAssets.Build; とあるので当然といえば当然ですが……)
using UnityEditor;
using UnityEditor.AddressableAssets.Build;
using UnityEngine;
[InitializeOnLoad]
public static class OnBuildCompleted
{
static OnBuildCompleted()
{
BuildScript.buildCompleted += OnBuildCompleted;
}
static void OnBuildCompleted(AddressableAssetBuildResult result)
{
// ここにビルド後の処理を入れる
Debug.Log(result.OutputPath);
}
}
Unity Editor 実行時は呼ばれないようにしたい
Unity Editor 実行時は不要な場合、処理されるファイル名によって要/不要を振り分けるとよさそうです。
Addressable ビルド時は、Library/com.unity.addressables/aa/Windows/settings.json が更新されました(unity2021.3で確認)
using UnityEditor;
using UnityEditor.AddressableAssets.Build;
using UnityEngine;
[InitializeOnLoad]
public static class OnBuildCompleted
{
static OnBuildCompleted()
{
BuildScript.buildCompleted += OnBuildCompleted;
}
static void OnBuildCompleted(AddressableAssetBuildResult result)
{
if (result.OutputPath.IndexOf("com.unity.addressables") < 0)
{
return;
}
// ここにビルド後の処理を入れる
Debug.Log(result.OutputPath);
}
}



