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.
Polecane dla Ciebie
- Uwaga: tekst linku jest wyświetlany, gdy JavaScript jest wyłączony
- Nadmierne skanowanie Wi-Fi w tle