Nadmierne użycie sieci komórkowej w tle

Gdy aplikacja łączy się z siecią komórkową w tle, wybudza procesor i włącza radio. Powtarzające się czynności mogą wyczerpywać baterię urządzenia. Uznaje się, że aplikacja działa w tle, jeśli ma stan PROCESS_STATE_BACKGROUND lub PROCESS_STATE_CACHED.

Z tego artykułu dowiesz się, jak ustalić, dlaczego aplikacja nadmiernie korzysta z sieci komórkowej, gdy działa w tle, oraz co zrobić w takiej sytuacji.

Wykryj problem

Nie zawsze wiesz, że aplikacja bezzasadnie korzysta z sieci, gdy działa w tle. Jeśli aplikacja została już opublikowana, Android Vitals może Cię poinformować o problemie, aby można było go naprawić.

Android Vitals

Android Vitals może poprawić wydajność aplikacji, ostrzegając w Konsoli Play o tym, że aplikacja zbyt często korzysta z sieci komórkowej w tle.

Gdy aplikacja wysyła i odbiera łącznie 50 MB dziennie, gdy działa w tle, Android Vitals traktuje nadmierne użycie sieci w tle. W Konsoli Play możesz sprawdzić odsetek sesji baterii, które wykazują takie działanie.

Definicja sesji baterii zależy od wersji platformy.

  • W Androidzie 10 sesja baterii to zbiór wszystkich raportów o stanie baterii, które zostały odebrane w ciągu danego 24-godzinnego okresu. Raport o stanie baterii odnosi się do okresu między dwoma ładowaniami baterii od poziomu naładowania poniżej 20% do powyżej 80% lub od dowolnego poziomu naładowania do 100%.
  • W Androidzie 11 sesja baterii ma stałą długość 24 godzin.

Informacje o tym, jak Google Play gromadzi dane Android Vitals, znajdziesz w dokumentacji Konsoli Play.

Badanie wykorzystania sieci komórkowej

Narzędzia takie jak Battery Historyn umożliwiają uzyskanie bardziej szczegółowych informacji o wykorzystaniu sieci komórkowej przez aplikację. Strona Battery Historyn udostępnia wizualizację wykorzystania radia mobilnego na poziomie poszczególnych aplikacji, dzięki czemu możesz uzyskać bardziej przejrzysty obraz tego, co dzieje się z Twoją aplikacją. Więcej informacji na temat funkcji Battery Historyn znajdziesz w artykule Analizowanie zużycia energii w ramach usługi Battery Historyn (w języku angielskim). Analizując sposób korzystania z sieci komórkowej przez aplikację, zwróć szczególną uwagę na wiersz Użycie sieci komórkowej.

Informacje o mechanice korzystania z usługi Historyk baterii znajdziesz w artykule Statystyki baterii i przewodnik historyczny baterii.

Ogranicz użycie sieci komórkowej

Możesz przenieść dane o korzystaniu z sieci komórkowej na pierwszy plan, aby poinformować użytkownika o tym, że trwa pobieranie, i udostępnić im elementy sterujące do wstrzymywania i wstrzymywania pobierania. Aby to zrobić, wywołaj metodę DownloadManager i ustaw parametr setNotificationVisibility(int) jako odpowiedni.