Unity

[Unity] Android GameActivity Entry point

wnwnovo 2024. 9. 23. 11:31

 

 

!! 둘 다 체크하는 경우는 테스트할 때만 ! 하나만 체크해야한다 !!

 

Activity(기존 방법)

- 원래 Unity가 지원했던 유일한 애플리케이션 진입점, 안정적

- 프로젝트에서 Java 스레드에서 실행해야 하는 플러그인을 사용하는 경우 사용

- 이전에 Activity 진입점을 사용한 오래된 프로젝트를 업그레이드하는 경우 사용

 

GameActivity(New)

- Java Thread가 아닌 Native Thread에서 실행됨

- 앞으로의 Unity 버전에서는 GameActivity가 기본 진입점이 될 예정

- GameActivity로 전환하면 브릿지 코드(Unity와 androidx.games:games-activity 패키지 사이)를 조정하거나 변경할 수 있음

- 이전 Activity 기반 애플리케이션에서는 불가능했던 일시 중지/재개와 같은 이벤트에 대해 훨씬 더 많은 유연성을 얻을 수 있음

- 특정 Unity 버전에 직접 연결되지 않으므로, GameActivity 라이브러리는 Unity와 별도로 업데이트할 수 있음

 

나같은 경우는 gameactivity로 변경 후 theme 에러가 생기면서 앱이 강제종료 되었다.

그래서 에러가 나지 않는 테마로 바꾸면 작동이 제대로 되지 않는 문제가 있어서 찾아보게 되었다,,,, 머 activity로 돌리면 바로 정상작동이 되긴 함,,

디스커션을 보다보면 변경 후 InputSystem이 작동이 안 된다, ANR이 감소하지 않았다 등 부정적인 이야기들도 있어서(물론 긍정적인 부분도 있겠지만) 이것저것 잘 고려해보고 변경하는게 좋을 것 같다!

 

참고 문서

 

https://docs.unity3d.com/2023.1/Documentation/Manual/android-application-entries.html

https://discussions.unity.com/t/introducing-gameactivity-for-android-in-2023-1/911486

https://developer.android.com/stories/games/cat-daddy-agdk?hl=en

https://github.com/Unity-Technologies/uaal-example/blob/master/docs/android.md