콘텐츠로 이동

Android Performance Tuner의 InvalidAnnotation 오류 해결

씬을 언로드할 때 Android Performance Tuner가 아래 오류를 남긴다.

SetCurrentAnnotation({ }) result is InvalidAnnotation
Google.Android.PerformanceTuner.AndroidPerformanceTuner`2:OnSceneChanged(Scene, Scene)
UnityEngine.SceneManagement.SceneManager:UnloadSceneAsyncInternal(Scene, UnloadSceneOptions)
SceneLoadManager:OnSceneLoaded(Scene, LoadSceneMode)

빌드에 포함하지 않은 씬은 annotation이 유효하지 않아 발생하는 문제다.

처음에는 빌드 시점에 씬별 enum을 생성하지 않도록 리턴해서 피하려 했다. 그러나 enum이 이 리턴으로 막지 못하는 시점에 생성·처리되는 것으로 의심되어 다른 방법을 찾았다. 그 시점은 확인하지 못했다.

스크립터블 오브젝트(SetupConfig.asset)의 Use Advanced Annotation을 false에서 true로 바꿔, SetCurrentAnnotation이 HasScene으로 검사하지 않게 했다.