Jetpack Compose 성능

Jetpack Compose는 처음부터 우수한 성능을 제공합니다. 권장사항을 사용하여 앱을 구성하여 일반적인 문제를 방지하고 Compose 애플리케이션의 성능을 최적화하세요.

Jetpack Compose 벤치마킹

Jetpack Compose 성능을 뷰와 비교하여 검증하기 위해 앱 콜드 시작, 이미지가 포함된 목록 또는 그리드 스크롤과 같은 중요한 실제 사용자 여정에 중점을 두는 히어로 벤치마크를 사용합니다. 오픈소스 Pokedex 앱을 사용하여 이러한 벤치마크를 실행하고 ViewsCompose 구현을 비교합니다.

이러한 벤치마크는 Compose 1.9 이상이 스크롤하는 동안 Jank에 대한 뷰 성능과 일치함을 보여줍니다.

Compose 1.9.0부터 Compose와 뷰의 버벅거림 발생률이 동일합니다.
Compose 1.9.0부터 Compose와 Views의 버벅거림률이 동일합니다.

추가 측정항목과 Google의 방법론에 관해 자세히 알아보려면 히어로 벤치마크를 참고하세요.

주요 개념

다음은 Compose의 성능에 관한 몇 가지 주요 개념입니다.

  • 단계: 컴포지션, 레이아웃, 그리기 단계를 이해하는 것은 Compose가 UI를 업데이트하는 방식을 최적화하는 데 중요합니다.
  • 기준 프로필: 이러한 프로필은 필수 코드를 사전 컴파일하여 앱 출시를 더 빠르게 하고 상호작용을 더 원활하게 합니다.
  • 안정성: 앱의 안정성을 높여 불필요한 리컴포지션을 더 효율적으로 건너뛰어 성능을 개선합니다.

적절한 앱 구성

앱의 성능이 좋지 않으면 구성 문제가 있을 수 있습니다. 먼저 다음 구성 옵션을 확인하는 것이 좋습니다.

  • R8로 출시 모드에서 빌드: 출시 모드에서 앱을 실행해 보세요. 디버그 모드는 여러 문제를 발견하는 데 유용하지만 성능 비용이 발생하며 다른 문제를 발견하기가 어려워질 수 있습니다. R8 컴파일러로 최적화 및 축소를 사용 설정하여 성능이 우수하고 효율적인 출시 빌드를 보장해야 합니다.
  • 기준 프로필 사용: 기준 프로필은 중요한 사용자 여정의 코드를 사전 컴파일하여 성능을 개선합니다. Compose에는 기본 프로필이 포함되어 있지만 앱 전용 프로필도 만드는 것이 좋습니다. 일반 Android 성능 문서에서 기준 프로필에 대해 자세히 알아보기

도구

Compose 앱의 성능을 측정하고 분석하는 데 사용할 수 있는 도구 모음을 숙지합니다.

권장사항

Compose로 앱을 개발할 때는 다음 권장사항을 참고하세요.

자세한 내용은 권장사항 가이드를 참고하세요.

조회수

Compose 대신 뷰를 사용하는 경우 전용 레이아웃 성능 개선 가이드를 참고하세요.

추가 리소스