성능 향상
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
사용자는 앱 시작부터 전체 앱 환경에 걸쳐 앱이 응답하고 빠르게 작동하기를 기대합니다. 앱에 성능 문제가 있는지 검사한 후 문제를 해결하고 앱 성능을 개선할 수 있습니다.
Android는 가장 중요한 프로덕션 단계에서 앱 성능을 지속적으로 개선할 수 있도록 여러 도구와 라이브러리를 제공합니다.
기준 프로필
성능을 개선하는 가장 효율적인 방법으로 앱 또는 라이브러리에 기준 프로필을 구현하세요. 앱 시작 시간을 최적화하고 느린 렌더링을 줄이며 최종 사용자를 위한 성능 향상을 기대할 수 있습니다. 자세한 내용은 기준 프로필을 참고하세요.
시작 프로필
시작 프로필은 기준 프로필과 유사한 실험용 기능이지만 다르게 적용되며 고유한 이점이 있습니다. 기준 프로필은 앱이 기기에 설치될 때 성능을 최적화하지만 시작 프로필은 컴파일 시간에 적용됩니다. DEX 파일 내에서 흔히 사용되는 클래스를 함께 그룹화할 수 있도록 R8 축소기 힌트를 제공합니다. 이렇게 하면 앱 시작 중에 페이지 오류가 줄어 시작 시간을 개선할 수 있습니다. 자세한 내용은 DEX 레이아웃 최적화 및 시작 프로필을 참고하세요.
앱 시작 라이브러리
앱 시작 라이브러리를 사용하면 앱 시작 환경을 더욱 최적화할 수 있습니다. 라이브러리 개발자는 물론 앱 개발자도 앱 시작 라이브러리를 사용하여 시작 시퀀스를 간소화하고 시작 작업을 최적화할 수 있습니다.
RAM이 적은 기기에 최적화
성능 개선은 처음부터 시작됩니다. 보급형 기기에 맞게 최적화하면 모든 기기 카테고리에서 효율성을 개선할 수 있습니다. 메모리가 제한된 기기를 사용하면 앱 시작 지연, 애플리케이션 응답 없음(ANR) 또는 앱 비정상 종료와 같은 문제가 발생할 가능성이 높습니다.
이 시장 부문을 염두에 두고 앱을 개발, 테스트, 벤치마킹하여 제작할 앱의 충분한 성능 기반을 구축하세요.
Android(Go 버전)는 RAM이 적은 기기에 최적화된 환경을 제공하는 Android 플랫폼 OS의 구성입니다.
보급형 기기의 안정성과 성능을 개선하는 방법을 자세히 알아보려면 Android(Go 버전)에 최적화를 참고하세요.
일반적인 문제 해결
제공되는 도구나 라이브러리를 사용해도 성능 문제가 해결되지 않으면 다음 카테고리에서 일반적인 문제와 솔루션을 확인하는 것이 좋습니다.
추가 리소스
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2025-07-27(UTC)
[null,null,["최종 업데이트: 2025-07-27(UTC)"],[],[],null,["# Improve performance\n\nUsers expect apps to be responsive and fast, from app startup and throughout the\nentire app experience. After you\n[inspect](/topic/performance/inspecting-overview) your app for performance\nproblems, you can fix any issues and improve your app's performance.\n\nTools and libraries\n-------------------\n\nAndroid provides multiple tools and libraries to continually improve the\nperformance of your app in production, where it matters the most.\n\n### Baseline Profiles\n\nImplement Baseline Profiles into your app or library for the most efficient way\nto improve performance. It can significantly optimize app startup time, reduce\nslow rendering, and improve performance for end users. To learn more, see\n[Baseline Profiles](/topic/performance/baselineprofiles).\n\n### Startup profiles\n\nStartup profiles is an experimental feature that is similar to Baseline\nProfiles, but is applied differently and has distinct benefits. Whereas a\nBaseline Profile optimizes performance as the app is installed on a device, a\nstartup profile is applied at compile-time. It gives the R8 shrinker hints to\ngroup commonly used classes together within the DEX file. This can reduce page\nfaults during app startup, and therefore improve startup times. To learn more,\nsee [DEX layout optimizations and startup\nprofiles](/topic/performance/baselineprofiles/dex-layout-optimizations).\n\n### App Startup library\n\nThe [App Startup library](/topic/libraries/app-startup) lets you further\noptimize the app startup experience. Both library developers and app developers\ncan use the App Startup library to streamline startup sequences and optimize\nstartup operations.\n\nOptimize for low-RAM devices\n----------------------------\n\nPerformance improvements begin from the ground-up. By optimizing for entry-level\ndevices, you can improve efficiency across all device categories. Users are more\nlikely to encounter issues such as app startup latency, application not\nresponding (ANRs), or app crashes when using memory-constrained devices.\nDevelop, test, and benchmark your app with this market segment in mind to create\na performant foundation for your app to build upon.\n\n[Android (Go edition)](/guide/topics/androidgo) is a configuration of the\nAndroid platform OS, which provides an optimized experience for low-RAM devices.\nTo learn more about improving stability and performance for entry-level devices,\nsee [Optimize for Android (Go edition)](/guide/topics/androidgo/optimize).\n\nSolve common problems\n---------------------\n\nIf the available tools or libraries don't resolve your performance issues, we\nrecommend checking for common problems and solutions in any of these categories:\n\n- [App startup](/topic/performance/vitals/launch-time)\n- [Slow rendering](/training/articles/perf-anr)\n- [Memory](/topic/performance/memory-overview)\n- [Battery and power](/training/monitoring-device-state/doze-standby)\n- [App size](/topic/performance/reduce-apk-size)\n\nAdditional resources\n--------------------\n\n- [Background work overview](/guide/background)\n- [Performance class](/topic/performance/performance-class)\n- [App Standby Buckets](/topic/performance/appstandby)\n- [App hibernation](/topic/performance/app-hibernation)"]]