앱이 백그라운드에서 Wi-Fi 검색을 실행하면 CPU의 절전 모드를 해제하여 배터리 소모율을 높입니다. 검색이 너무 많이 발생하면 기기의 배터리 수명이 현저하게 단축될 수 있습니다. 앱이 PROCESS_STATE_BACKGROUND
또는 PROCESS_STATE_CACHED
상태이면 백그라운드에서 실행 중인 것으로 간주됩니다.
이 문서에서는 앱이 백그라운드에서 너무 많은 Wi-Fi 검색을 실행하는 경우를 감지하는 방법을 설명하고 문제 진단 및 해결 방법에 관한 도움말을 제공합니다.
문제 감지
앱의 Wi-Fi 검색 횟수가 과도하게 많다는 것을 항상 알 수 있는 것은 아닙니다. 앱을 이미 게시했다면 Android vitals를 사용하여 문제를 인식한 후 해결할 수 있습니다.
Android vitals
Android vitals를 사용하면 앱이 백그라운드에서 불필요한 Wi-Fi 검색을 실행하는 경우 Play Console을 통해 알림을 보냄으로써 앱의 성능을 개선할 수 있습니다. 앱이 백그라운드에서 실행되는 동안 배터리 세션의 0.10%로 시간당 5회 이상의 검색을 실행하면 Android vitals에서 불필요한 Wi-Fi 검색으로 간주합니다.
배터리 세션은 두 번의 배터리 완전 충전 사이의 간격을 나타냅니다. Google Play에서 Android vitals 데이터를 수집하는 방법에 관한 자세한 내용은 Play Console 문서를 참조하세요.
Wi-Fi 검색 조사
Battery Historian과 같은 도구를 사용하면 앱의 검색 동작을 더 자세히 알아볼 수 있습니다. Battery Historian은 앱별로 Wi-Fi 검색 동작을 시각화하여 앱에서 발생하는 상황을 명확하게 파악하는 데 도움이 될 수 있습니다. Battery Historian에 관한 자세한 내용은 Battery Historian으로 전원 사용량 분석을 참조하세요.
Battery Historian 사용의 역학에 관한 자세한 내용은 Batterystats 및 Battery Historian 둘러보기를 참조하세요.
검색 수 줄이기
가능한 경우 앱이 포그라운드에서 실행되는 동안 Wi-Fi 검색을 실행해야 합니다. 포그라운드 서비스는 자동으로 알림을 제공하므로 포그라운드에서 Wi-Fi 검색을 실행하면 사용자가 기기에서 Wi-Fi 검색이 발생하는 이유와 시기를 알 수 있습니다.
포그라운드에서 검색하는 방법에 관한 자세한 내용은 WifiManager
클래스의 문서를 참조하세요.
앱이 백그라운드에서 실행되는 동안 Wi-Fi 검색 실행을 방지할 수 없을 때 Lazy First 전략을 적용하면 도움이 될 수 있습니다. Lazy First에는 Wi-Fi 검색을 줄이는 데 사용할 수 있는 세 가지 기법(축소, 지연 및 병합)이 포함됩니다. 이러한 기법에 관한 자세한 내용은 배터리 수명 최적화를 참조하세요.