Android 게임 최적화

Android 최적화 도구와 API는 성능 병목 현상을 찾고 기기 제한 사항을 확인하는 한편 게임 및 그래픽 사용량이 많은 앱의 지속 가능한 수준에서 성능을 극대화하도록 설계되었습니다.

  • Android GPU 검사기(AGI): 게임 및 그래픽 사용량이 많은 앱에 고급 GPU 추적 및 분석을 제공하는 Android 시스템 프로파일링 도구입니다.

  • Android Performance Tuner (APT): 게임의 품질 설정, 장면, 로드 시간, 기기 모델과 관련된 성능 문제를 찾습니다.

  • Android Dynamic Performance Framework (ADPF): 각 기기의 동적 열, CPU, GPU 관리 기능을 기반으로 게임을 최적화합니다.

  • Memory Advice API: LMK를 방지하는 최적의 수준을 유지할 수 있도록 게임에 메모리 사용량 추정치 및 기준점 알림을 제공합니다.

  • Game Mode API: 사용자 설정이나 게임별 구성을 기반으로 성능이나 배터리 수명과 같은 특성의 우선순위를 지정하여 게임플레이를 최적화합니다.

  • Perfetto: 시스템 전체 성능 정보를 수집하여 웹 기반 UI에 표시합니다.

  • Systrace: 시스템 활동을 기록하고 성능 문제를 식별하는 데 도움이 되는 보고서를 생성합니다.

  • CPU 프로파일러: 실시간으로 또는 기록된 트레이스에서 앱의 CPU 사용량 및 스레드 활동을 검사합니다.

  • Meminfo 클래스: 앱 메모리 할당의 스냅샷을 기록합니다. meminfo dumpsys 명령어를 통해서도 이 기능을 사용할 수 있습니다.

  • 버그 신고: 앱의 버그를 찾아서 수정하는 데 도움이 되도록 기기 로그, 스택 트레이스, 기타 진단 정보를 확인합니다.

  • R8: 앱의 Java 및 Kotlin 기반 코드와 리소스를 축소, 최적화, 난독화하여 DEX 크기를 줄이고, 시작 성능을 개선하고, 런타임 메모리 오버헤드를 최소화합니다.

  • R8 구성 분석기: R8 유지 규칙을 검사하고 최적화하여 앱 또는 서드 파티 라이브러리의 지나치게 광범위한 구성을 식별하고 게임의 Java 및 Kotlin 기반 종속성의 코드 축소, 난독화, DEX 크기를 개선합니다.

  • 기준 프로필: 런처 Activity, SDK 초기화 등 게임의 Java 및 Kotlin 기반 코드 경로에 대한 AOT (Ahead-Of-Time) 컴파일 사양을 ART에 제공하여 시작 시간을 개선하고 실행 단계의 버벅거림 현상을 줄입니다.

  • Macrobenchmark: 자동화된 테스트 환경이나 CI에서 콜드 스타트 타이밍, 시작 후 작업과 같은 상위 수준 앱 성능을 측정하고 테스트하며 게임의 기준 프로필을 생성합니다.