우수한 기술 품질이란

기술 품질에는 앱 또는 게임의 안정성, 성능, 리소스 사용률이 포함됩니다. 앱 또는 게임의 기술 품질은 사용자 환경에 영향을 미칠 수 있습니다. 고품질 환경은 기술적 문제를 최소화할 뿐만 아니라 Android OS 및 기기 하드웨어의 기능을 최대한 활용합니다.

고품질 앱 또는 게임을 빌드하려면 다음 가이드라인을 따르세요.

폼 팩터

앱 또는 게임이 폴더블과 같은 프리미엄 기기를 최대한 활용해야 합니다. 지원하는 각 폼 팩터의 기능 및 기술 가이드라인을 따르세요.

앱 또는 게임이 여러 폼 팩터를 지원하는 것이 타당하다면 폼 팩터 간에 연속성을 보장하여 원활한 사용자 환경을 제공합니다(예: 기기 간에 파일 및 설정을 동기화하거나 진행 상황을 저장).

안정성

안정성 문제로 인해 앱 또는 게임이 비정상 종료되거나 응답하지 않아 사용자 여정이 중단되고 사용자 환경이 저하됩니다. 비정상 종료, ANR, LMK를 비롯한 다양한 유형의 문제가 있지만 모두 사용자에게 지장을 줍니다.

앱 또는 게임 안정성은 기기에 따라 다를 수 있습니다. 모든 기기에서 안정성 측정항목을 정기적으로 모니터링하고 안정성 문제의 영향을 받는 사용자 및 세션의 비율을 최소화합니다. 안정성 측정항목이 동종업체에 비해 업계 최고 수준을 유지해야 합니다. 사용자 의견 및 참여도 측정항목을 모니터링하여 안정성 문제가 사용자에게 영향을 미치지 않는지 확인합니다.

GWP-ASan 선택과 같은 권장사항을 따르고 Kotlin과 같은 null 안전 언어로 프로그래밍하고 백그라운드 작업 API를 사용하면 안정성 문제를 줄이고 문제가 발생했을 때 더 쉽게 디버깅할 수 있습니다.

안정성 및 Google Play

Google Play에서 배포하는 경우 다음과 같은 추가적인 안정성 가이드라인을 따르세요.

안정성 모니터링 및 개선을 위한 도구
Play Console 또는 Reporting API에서 Android vitals를 사용하여 사용자와 Google Play에 가장 중요한 안정성 측정항목을 모니터링합니다. Android vitals는 모든 앱과 게임의 사용자 인식 비정상 종료 발생률 및 사용자 인식 ANR 발생률을 1일, 앱과 게임의 경우 데이터가 충분한 경우 1시간마다 보고합니다. Android vitals는 안정성 측정항목을 동종 앱과 비교하고 기기별 문제를 알리는 데 도움이 되기도 합니다.

검색 및 추천
안정성 측정항목이 Google Play의 비정상적인 동작 기준을 초과하는 기기에서는 앱 또는 게임의 검색 가능성이 제한될 수 있으며 이러한 기기의 스토어 등록정보에 경고가 표시될 수 있습니다. 자세히 알아보기

성능

앱 또는 게임의 성능은 양질의 경험을 제공하는 데 매우 중요합니다.

시작 시간 (앱) 및 로드 시간 (게임)

사용자는 앱 또는 게임과 최대한 빠르게 상호작용하고 싶어 합니다. 좋은 시작 또는 로드 시간의 정의는 카테고리에 따라 다르지만 일반적으로 시작과 첫 번째 상호작용 사이의 시간을 최소화해야 합니다. 이 시간은 기기에 따라 다를 수 있으며 다른 표준은 기기 기능에 따라 적절할 수 있습니다.

동종 업계에 비해 측정항목이 업계 최고 수준인지 확인합니다. 사용자 의견과 이탈률을 모니터링하여 사용자 기대치를 충족하고 시간이 지남에 따라 성능이 저하되지 않는지 확인합니다.

Android를 활용하여 시작 시간을 최적화합니다. 기준 프로필을 제공하고 reportFullyDrawn을 선언하면 코드의 가장 중요한 섹션이 더 빠르게 로드되며 Game State API(게임 전용)를 채택하면 로드 중에 OS를 조정하는 데 도움이 됩니다. 게임 또는 앱의 크기를 줄이면 새 설치의 시작 시간도 단축됩니다.

렌더링 (앱)

원활하게 반응하는 세션은 사용자 경험을 더욱 즐겁게 만들고 사용자의 참여를 더 오래 유지합니다. 대부분의 앱은 프레임 드롭 또는 지연 없이 60fps로 실행되어야 합니다. 렌더링 성능이 낮으면 사용자가 버벅거림(버벅거림이라고도 함)을 인식할 수 있습니다.

모든 기기에서 렌더링 측정항목을 정기적으로 모니터링하고 버벅거림이 발생하는 사용자 및 세션의 비율을 최소화하는 것을 목표로 합니다. 동종 앱과 비교하여 동급 최고의 렌더링 성능을 목표로 합니다. 사용자 의견과 참여를 모니터링하여 만족스러운 환경을 제공하고 있는지 확인하세요.

기준 프로필을 제공하면 렌더링 성능과 시작 시간을 개선할 수 있습니다. JankStats 라이브러리를 사용하여 성능 문제를 추적하고 분석해 보세요. 렌더링 권장사항을 검토하세요.

렌더링 (게임)

원활하게 반응하는 세션은 사용자 경험을 더욱 즐겁게 만들고 사용자의 참여를 더 오래 유지하는 데 도움이 됩니다. 대부분의 게임은 사용자에게 합리적인 환경을 제공하기 위해 핵심 게임 루프를 최소 30fps로 실행해야 합니다. 가장 보람 있는 사용자 환경을 제공하려면 특히 매끄러운 애니메이션이나 빠른 반응 시간이 필요한 게임이나 고급형 기기에서 실행할 때 60fps 이상의 프레임 속도를 고려하는 것이 좋습니다. 프레임 속도가 높을수록 배터리 수명, 기기 온도 및 그래픽 충실도가 감소하므로 속도가 모든 기기, 게임, 장면에 적합하지 않을 수도 있습니다.

모든 기기에서 렌더링 측정항목을 정기적으로 모니터링하고 느린 렌더링을 경험하는 사용자 및 세션의 비율을 최소화합니다. 동종 앱 대비 동급 최고의 렌더링 성능을 목표로 합니다. 사용자 의견과 참여를 모니터링하여 만족스러운 환경을 제공하고 있는지 확인하세요.

Android 동적 성능 프레임워크, Game Mode 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 DeliveryPlay Asset Delivery의 이점을 추가로 활용할 수 있습니다.

앱 최신 상태

사용자가 성능 개선, 버그 수정, 플랫폼 개선사항, 새로운 기능, 새로운 콘텐츠의 이점을 누릴 수 있도록 앱을 정기적으로 업데이트합니다. 일부 사용자는 안정적이거나 저렴한 네트워크 액세스 또는 사용 가능한 기기 저장용량을 갖지 않습니다. 앱이나 게임을 업데이트할 수 있는 활성 사용자 수를 늘리려면 업데이트 크기를 최소화하세요.

Google Play 가이드라인

Google Play에서 배포하는 경우 다음과 같은 추가 앱 최신성 가이드라인을 따르세요.

앱 최신성을 높이는 도구
모든 사용자가 백그라운드 업데이트를 사용 설정하는 것은 아닙니다. 인앱 업데이트와 같은 기능을 채택하면 최신 버전의 앱이나 게임의 활성 사용자 수를 늘릴 수 있습니다.

정상 출시

서버 측 플래그 또는 앱 업데이트를 통해 코드베이스가 변경되면 새로운 기술 문제가 발생하는 일반적인 원인입니다. 문제가 발생한 후 수정하기보다는 시간을 투자하여 프로덕션에 도달하지 못하게 하는 데 시간을 투자하면 사용자에게 훨씬 좋습니다. 사용자는 만족스럽지 못한 경험을 통해 빠르게 의견을 남길 수 있으며, 첫 설치 후 앱을 업데이트하지 못할 수도 있습니다.

출시 버전에 새로운 문제가 발생할 위험을 최소화하려면 테스트 및 출시에 대한 단계별 접근 방식을 취하고, 변경 중에 측정항목을 자주 모니터링합니다. 또한 Firebase 원격 구성과 같은 원격 구성 SDK와 기능 출시에서 바이너리 출시를 분리하여 새로운 문제를 보다 쉽게 완화할 수 있습니다.

Google Play 가이드라인

Google Play에서 배포하는 경우 정상적인 출시를 위해 다음과 같은 추가 가이드라인을 따르세요.

출시 품질을 모니터링하고 개선하기 위한 도구
Play Console은 안심하게 출시하는 데 도움이 되는 여러 기능을 제공하며, Android vitals는 Play ConsoleReporting API에서 모두 데이터가 충분한 경우 앱과 게임의 시간별 측정항목을 보고합니다.

검색 및 추천
Google Play는 사용자가 사용 중인 버전과 관계없이 모든 앱 사용자의 기술 품질을 평가합니다. 따라서 출시 품질을 관리하면 사용자뿐 아니라 Google Play 품질 측정항목에도 도움이 됩니다. 자세히 알아보기