불필요한 백그라운드 모바일 네트워크 사용

앱이 백그라운드에서 모바일 네트워크에 연결하면 앱이 CPU의 절전 모드를 해제하고 무선 연결을 사용 설정합니다. 이 작업을 반복적으로 실행하면 기기의 배터리가 다 소모될 수 있습니다. 앱이 PROCESS_STATE_BACKGROUND 또는 PROCESS_STATE_CACHED 상태이면 백그라운드에서 실행 중인 것으로 간주됩니다.

이 페이지에서는 앱이 백그라운드에서 실행되는 동안 모바일 네트워크를 불필요하게 사용하는 이유와 이와 관련하여 필요한 조치를 설명합니다.

문제 감지

앱이 백그라운드에서 실행되는 동안 네트워크를 과도하게 사용하고 있다는 것을 항상 알 수 있는 것은 아닙니다. 앱을 이미 게시했다면 Android vitals를 사용하여 문제를 인식한 후 해결할 수 있습니다.

Android vitals

Android vitals를 사용하면 앱이 백그라운드에서 불필요한 Wi-Fi 검색을 실행하는 경우 Play Console을 통해 알림을 보냄으로써 앱의 성능을 개선할 수 있습니다. 앱이 백그라운드에서 실행되는 동안 배터리 세션의 0.10%로 모두 합해 시간당 50MB를 보내고 받는 경우 Android vitals에서 불필요한 백그라운드 네트워크 사용으로 간주합니다.

배터리 세션은 두 번의 배터리 완전 충전 사이의 간격을 나타냅니다. Google Play에서 Android vitals 데이터를 수집하는 방법에 관한 자세한 내용은 Play Console 문서를 참조하세요.

모바일 네트워크 사용 동작 조사

Battery Historian과 같은 도구를 사용하면 앱의 모바일 네트워크 사용을 더 자세히 알아볼 수 있습니다. Battery Historian은 앱별 모바일 무선 통신 사용을 시각화하여 앱에서 발생하는 상황을 명확하게 파악하는 데 도움이 될 수 있습니다. Battery Historian에 대한 자세한 내용은 Battery Historian으로 전원 사용량 분석을 참조하세요. 앱의 모바일 네트워크 사용 동작을 조사할 때 모바일 네트워크 사용 라인에 특히 유의해야 합니다.

Battery Historian 사용의 역학에 관한 자세한 내용은 Batterystats 및 Battery Historian 둘러보기를 참조하세요.

모바일 네트워크 사용 줄이기

앱이 동기화를 실행 중이므로 모바일 네트워크 사용이 발생할 수 있습니다. 동기화 및 동기화에 따른 네트워크 사용을 줄이는 방법에 관한 자세한 내용은 불필요한 백그라운드 동기화를 참조하세요.

또한 앱의 모바일 네트워크 사용으로 포그라운드로 이동하여 사용자에게 다운로드가 진행 중이라는 사실을 알리고 다운로드를 일시중지하거나 중지하는 컨트롤을 제공할 수 있습니다. 이렇게 하려면 DownloadManager를 호출하고 setNotificationVisibility(int)를 적절하게 설정하세요.