기술 품질에는 앱 또는 게임의 안정성, 성능, 리소스 사용률이 포함됩니다. 앱 또는 게임의 기술 품질은 사용자 환경에 영향을 미칠 수 있습니다. 고품질 환경은 기술적 문제를 최소화할 뿐만 아니라 Android OS 및 기기 하드웨어의 기능을 최대한 활용합니다.
고품질 앱 또는 게임을 빌드하려면 다음 가이드라인을 따르세요.
폼 팩터
앱이나 게임은 폴더블과 같은 프리미엄 기기를 최대한 활용해야 합니다. 지원하는 각 폼 팩터의 기능 및 기술 가이드라인을 따르세요.
앱 또는 게임이 여러 폼 팩터를 지원하는 것이 타당하다면 원활한 사용자 환경을 위해 폼 팩터 간에 연속성을 보장하세요(예: 기기 간에 파일 및 설정을 동기화하거나 진행 상황을 저장).
안정성
안정성 문제로 인해 앱이나 게임이 비정상 종료되거나 응답하지 않아 사용자 여정을 방해하고 사용자 환경을 해칠 수 있습니다. 비정상 종료, ANR, LMK 등 다양한 유형의 문제가 있지만 모두 사용자에게 지장을 주는 영향을 미칩니다.
앱 또는 게임의 안정성은 기기마다 다를 수 있습니다. 모든 기기에서 안정성 측정항목을 정기적으로 모니터링하고 안정성 문제의 영향을 받는 사용자와 세션의 비율을 최소화하는 것이 좋습니다. 안정성 측정항목이 동종업체에 비해 동급 최고인지 확인하세요. 사용자 의견 및 참여도 측정항목을 모니터링하여 안정성 문제가 사용자에게 영향을 미치지 않는지 확인합니다.
GWP-ASan 선택, Kotlin과 같은 null 안전 언어로 프로그래밍, 백그라운드 작업 API 사용과 같은 권장사항을 따르면 안정성 문제를 줄이고 디버깅을 더 쉽게 할 수 있습니다.
Google Play 가이드라인
Google Play에서 배포하는 경우 다음과 같은 추가 안정성 가이드라인을 따르세요.
안정성을 모니터링하고 개선하는 도구
Play Console 또는 Reporting API에서 Android vitals를 사용하여 사용자와 Google Play에 가장 중요한 안정성 측정항목을 모니터링합니다. Android vitals는 모든 앱과 게임에서 사용자 인식 비정상 종료 발생률 및 사용자 인식 ANR 발생률을 매일, 데이터가 충분한 경우 앱과 게임의 경우 매시간 보고합니다. 또한 Android vitals는 안정성 측정항목을 동종 앱과 비교하고 기기별 문제를 알리는 데 도움이 됩니다.
검색 및 추천
안정성 측정항목이 Google Play의 비정상적인 동작 기준을 초과하는 기기에서는 앱 또는 게임의 검색 가능성이 제한될 수 있으며 이러한 기기의 스토어 등록정보에 경고가 표시될 수 있습니다.
자세히 알아보기
성능
앱 또는 게임의 성능은 양질의 경험을 제공하는 데 매우 중요합니다.
시작 시간 (앱) 및 로드 시간 (게임)
사용자는 앱이나 게임과 최대한 빠르게 상호작용하고 싶어 합니다. 좋은 시작 또는 로드 시간의 정의는 카테고리에 따라 다르지만 일반적으로 시작과 첫 번째 상호작용 사이의 시간을 최소화하는 것이 좋습니다. 이 시간은 기기에 따라 다를 수 있으며 다양한 표준이 기기 기능에 따라 적합할 수 있습니다.
측정항목이 동종 업계에서 최고 수준을 유지하도록 합니다. 사용자 의견 및 이탈률을 모니터링하여 사용자 기대치를 충족하고 시간이 지남에 따라 성능이 저하되지 않는지 확인합니다.
Android를 활용하여 시작 시간을 최적화합니다. 기준 프로필을 제공하고 reportFullyDrawn을 선언하면 코드의 가장 중요한 섹션이 더 빠르게 로드되며 Game State API(게임 전용)를 채택하면 로드 중에 OS가 조정되는 데 도움이 됩니다. 게임 또는 앱의 크기를 줄이면 새 설치의 시작 시간도 단축됩니다.
렌더링 (앱)
원활하게 반응하는 세션은 사용자 경험을 더 즐겁게 만들고 사용자의 참여를 더 오래 유지합니다. 대부분의 앱은 프레임 누락이나 지연 없이 60fps로 실행되어야 합니다. 렌더링 성능이 낮으면 사용자가 끊김 현상(버벅거림이라고도 함)을 인식할 수 있습니다.
모든 기기에서 렌더링 측정항목을 정기적으로 모니터링하고 버벅거림이 발생하는 사용자 및 세션의 비율을 최소화하세요. 동종 앱과 비교하여 동급 최고의 렌더링 성능을 목표로 합니다. 사용자 의견과 참여를 모니터링하여 우수한 환경을 제공하고 있는지 확인하세요.
기준 프로필을 제공하면 렌더링 성능과 시작 시간을 개선할 수 있습니다. JankStats 라이브러리를 사용하여 성능 문제를 추적하고 분석하는 것이 좋습니다. 렌더링 권장사항을 검토합니다.
렌더링 (게임)
원활하고 응답 속도가 빠른 세션은 사용자 경험을 더 즐겁게 만들고 사용자의 참여를 더 오래 유지하는 데 도움이 됩니다. 대부분의 게임은 사용자에게 합리적인 환경을 제공하기 위해 최소 30fps로 핵심 게임 루프를 실행해야 합니다. 가장 보상적인 사용자 환경을 제공하려면 특히 원활한 애니메이션이나 빠른 반응 시간이 필요한 게임, 고급형 기기에서 실행할 때 60fps 이상의 프레임 속도를 사용하는 것이 좋습니다. 프레임 속도가 높을수록 배터리 수명, 기기 온도 및 그래픽 충실도가 감소하므로 속도를 높여도 일부 기기, 게임, 장면에 적합하지 않을 수 있습니다.
모든 기기에서 렌더링 측정항목을 정기적으로 모니터링하고 느린 렌더링을 경험하는 사용자와 세션의 비율을 최소화합니다. 동종 앱 대비 동급 최고의 렌더링 성능을 목표로 합니다. 사용자 의견과 참여를 모니터링하여 좋은 환경을 제공하고 있는지 확인하세요.
Android 동적 성능 프레임워크, 게임 모드 API, 프레임 속도 사용과 같은 권장사항을 따라 시각적 부드러움과 안정성을 최적화합니다. Android Performance Tuner를 사용하여 지원하는 기기에 맞게 품질 수준을 적절하게 조정하세요. 그래픽 라이브러리와 애셋 형식과 관련하여 신중하게 선택하세요. 예를 들어 Vulkan을 그래픽 API로 사용하고 애셋용 ASTC를 사용하면 렌더링 성능을 크게 개선할 수 있습니다.
Google Play 가이드라인
Google Play에서 배포하는 경우 다음의 추가 성능 가이드라인을 따르세요.
성능을 모니터링하고 개선하는 도구
Play Console 또는 Reporting API에서 Android vitals를 사용하여 사용자와 Google Play에 가장 중요한 성능 측정항목을 모니터링합니다. Android vitals는 모든 앱과 게임의 시작 시간, 로드 시간, 렌더링 측정항목을 매일 보고합니다. 또한 측정항목을 동종 앱과 비교하는 데 도움이 되며, Play 품질 기준을 충족하지 못하는 경우 알림을 받을 수 있습니다.
다운로드하며 플레이는 게임이 다운로드되는 동안 사용자가 게임 환경을 이용할 수 있도록 하는 Google Play 기능으로, 이를 통해 실행부터 게임플레이까지 걸리는 시간을 단축합니다.
검색 및 추천
성능 측정항목이 Google Play의 비정상적인 동작 기준을 초과하는 기기에서는 앱 또는 게임의 검색 가능성이 제한될 수 있으며 이러한 기기의 스토어 등록정보에 경고가 표시될 수 있습니다.
자세히 알아보기
배터리 및 네트워크 사용량
배터리 수명 및 네트워크 대역폭과 같이 제한되거나 비용이 많이 드는 리소스를 신중하고 적절하게 사용하면 더 많은 사용자가 앱에 액세스할 수 있고 세션 길이가 늘어나며 사용자 유지율이 향상됩니다.
게임은 예를 들어 메뉴를 렌더링하거나 화면을 로드하는 경우와 같이 적절한 경우 프레임 속도를 줄이고 화면 재생 빈도를 표시해야 합니다. Game Mode API를 사용하면 사용자가 성능과 배터리 수명 간의 절충에 도움이 될 수 있으며 플레이 시간이 길어질 수 있습니다.
Google Play 가이드라인
Google Play에서 배포하는 경우 다음 추가 배터리 및 네트워크 사용 가이드라인을 따르세요.
배터리 및 네트워크 사용을 모니터링하고 최적화하는 도구
Play Console 또는 Reporting API에서 Android vitals를 사용하여 사용자와 Google Play에 가장 중요한 배터리 및 네트워크 측정항목을 모니터링하세요.
앱 크기
좋은 앱 크기의 정의는 카테고리에 따라 크게 다르지만 일반적으로 앱의 크기를 최소화해야 합니다. 앱이 작을수록 더 많은 사용자가 앱을 설치할 수 있으며 설치와 첫 사용 사이의 시간이 단축됩니다. 또한 사용자가 기기 저장용량을 확보하기 위해 앱을 제거할 가능성이 낮습니다.
Google Play 가이드라인
Google Play에서 배포하는 경우 다음과 같은 추가 앱 크기 가이드라인을 따르세요.
앱 크기를 모니터링하고 최적화하는 도구
Play Console에서 Android vitals를 사용하여 앱 크기를 모니터링합니다. Android vitals를 사용하면 앱 크기를 동종 앱과 비교할 수 있으며 사용자층에서 저장용량이 부족한 기기가 몇 개인지 파악할 수 있습니다. Google Play는 사용자가 제거할 앱을 제안하여 사용자가 기기 저장용량을 확보할 수 있도록 사전에 지원하며 이러한 권장사항을 제공할 때 앱 크기를 우선시합니다.
Google Play에서 배포하는 경우 App Bundle 형식을 사용하여 각 사용자가 앱 또는 게임을 실행하는 데 필요한 코드와 리소스만 다운로드하도록 합니다. 더 큰 앱과 게임은 Play Feature Delivery와 Play Asset Delivery의 이점을 추가로 활용할 수 있습니다. Play Asset Delivery에서는 코드 또는 애셋의 특정 부분을 조건부로 또는 주문형으로 다운로드할 수 있습니다.
앱 최신 상태
사용자가 성능 개선, 버그 수정, 플랫폼 개선, 새로운 기능, 새로운 콘텐츠의 이점을 누릴 수 있도록 앱을 정기적으로 업데이트합니다. 모든 사용자가 안정적이거나 저렴한 네트워크 액세스나 기기 저장용량을 사용할 수 있는 것은 아닙니다. 앱이나 게임을 업데이트할 수 있는 활성 사용자 수를 늘리려면 업데이트 크기를 최소화하세요.
Google Play 가이드라인
Google Play에서 배포하는 경우 다음과 같은 추가 앱 최신성 가이드라인을 따르세요.
앱 최신 상태를 높이는 도구
일부 사용자는 백그라운드 업데이트를 사용 설정하지 않습니다. 인앱 업데이트와 같은 기능을 도입하면 최신 버전의 앱이나 게임의 활성 사용자 수를 늘릴 수 있습니다.
정상 출시
서버 측 플래그 또는 앱 업데이트를 통해서든 코드베이스가 변경되면 새로운 기술 문제의 일반적인 원인입니다. 문제가 발생한 후 해결하는 것보다는 문제가 프로덕션에 도달하지 못하게 하는 데 시간을 투자하는 것이 사용자에게 훨씬 좋습니다. 사용자 경험이 불만족스러우면 사용자는 빠르게 의견을 남길 수 있으며, 첫 설치 후 앱을 업데이트하지 못할 수도 있습니다.
출시 버전에 새로운 문제가 발생할 위험을 최소화하려면 테스트 및 출시에 대한 단계별 접근 방식을 취하고, 변경 중에 측정항목을 자주 모니터링합니다. 또한 Firebase 원격 구성과 같은 원격 구성 SDK와 기능 출시에서 바이너리 출시를 분리하여 새로운 문제를 보다 쉽게 완화할 수 있습니다.
Google Play 가이드라인
Google Play에서 배포하는 경우 정상적인 출시를 보장하기 위한 추가 가이드라인을 따르세요.
출시 품질을 모니터링하고 개선하는 도구
Play Console은 안심하고 출시하는 데 도움이 되는 여러 기능을 제공하며, Android vitals는 Play Console과 Reporting API에서 충분한 데이터가 있는 경우 앱과 게임의 시간별 측정항목을 보고합니다.
검색 및 추천
Google Play는 사용자가 사용 중인 버전과 관계없이 모든 앱 사용자의 기술 품질을 평가합니다. 따라서 출시 품질을 관리하면 사용자뿐 아니라 Google Play 품질 측정항목에도 도움이 됩니다.
자세히 알아보기