Jetpack Compose 성능

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

Jetpack Compose 벤치마킹

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

이러한 벤치마크는 Compose 1.9 이상이 스크롤 중 버벅거림에 대한 뷰 성능과 일치함을 보여줍니다.

Compose 1.9.0부터 Compose와 뷰의 버벅거림 비율이 동일함
Compose 1.9.0부터 Compose와 뷰의 버벅거림 비율이 동일합니다.

추가 측정항목과 방법론에 대한 자세한 내용은 Hero 벤치마크를 참조하세요.

주요 개념

다음은 Compose의 성능과 관련된 몇 가지 주요 개념입니다.

  • 단계: Compose가 UI를 업데이트하는 방식을 최적화하려면 컴포지션, 레이아웃, 그리기 단계를 이해하는 것이 중요합니다.
  • 기준 프로필: 이 프로필은 필수 코드를 사전 컴파일하여 앱 실행 속도를 높이고 상호작용을 더 원활하게 합니다.
  • 안정성: Compose가 리컴포지션 중에 매개변수를 비교하는 방법을 이해하여 비용이 많이 드는 동등성 검사를 도입하지 않고도 불필요한 작업을 건너뛸 수 있습니다.

적절한 앱 구성

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

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

도구

Compose 앱의 성능을 측정하고 분석하는 데 도움이 되는 도구 모음을 숙지합니다.

권장사항

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

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

조회수

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

추가 리소스