Pratinjau Developer Android 11 kedua kini tersedia, uji dan sampaikan masukan Anda.

Pemindaian Wi-Fi Berlebihan di Latar Belakang

Saat melakukan pemindaian Wi-Fi di latar belakang, aplikasi membangunkan CPU, sehingga menyebabkan kehabisan baterai. Jika terlalu banyak pemindaian yang dilakukan, masa pakai baterai dapat berkurang banyak. Aplikasi dianggap berjalan di latar belakang jika berada dalam status PROCESS_STATE_BACKGROUND atau PROCESS_STATE_CACHED.

Dokumen ini menjelaskan cara mendeteksi kapan aplikasi melakukan terlalu banyak pemindaian Wi-Fi di latar belakang, serta memberikan tips tentang cara mendiagnosis dan mengatasi masalah.

Mendeteksi masalah

Anda mungkin tidak selalu mengetahui bahwa aplikasi menunjukkan pemindaian Wi-Fi dalam jumlah yang sangat banyak. Jika Anda telah memublikasikan aplikasi, Android vitals dapat membuat Anda menyadari masalah agar Anda dapat memperbaikinya.

Android vitals

Android vitals dapat membantu menyempurnakan performa aplikasi dengan memberi tahu Anda, melalui Konsol Play, kapan aplikasi melakukan pemindaian Wi-Fi yang berlebihan di latar belakang. Android vitals menganggap pemindaian Wi-Fi berlebihan saat aplikasi melakukan lebih dari 4 pemindaian per jam dalam 0,10 % sesi baterai saat berjalan di latar belakang.

Sesi baterai mengacu kepada interval antara dua pengisian daya baterai penuh. Untuk informasi tentang cara Google Play mengumpulkan data Android vitals, lihat dokumentasi Konsol Play.

Menyelidiki pemindaian Wi-Fi

Alat seperti Battery Historian dapat membantu Anda mendapatkan lebih banyak data tentang perilaku pemindaian aplikasi. Battery Historian menyediakan visualisasi perilaku pemindaian Wi-Fi per aplikasi, yang dapat membantu Anda mendapatkan gambaran yang lebih jelas tentang situasi yang terjadi di aplikasi. Untuk informasi selengkapnya tentang Battery Historian, lihat Menganalisis Penggunaan Daya dengan Battery Historian.

Untuk informasi tentang mekanika penggunaan Battery Historian, lihat Batterystats dan Panduan Battery Historian.

Mengurangi pemindaian

Jika memungkinkan, aplikasi harus melakukan pemindaian Wi-Fi saat aplikasi sedang berjalan di latar depan. Layanan latar depan secara otomatis menyajikan notifikasi; melakukan pemindaian Wi-Fi di latar depan sehingga pengguna menyadari alasan dan waktu pemindaian Wi-Fi dilakukan di perangkatnya.

Untuk informasi tentang cara memindai saat berada di latar depan, lihat dokumentasi untuk kelas WifiManager.

Jika aplikasi tidak dapat menghindari dilakukannya pemindaian Wi-Fi saat aplikasi sedang berjalan di latar belakang, aplikasi dapat memanfaatkan penerapan strategi Lazy First. Lazy First mencakup tiga teknik yang dapat Anda gunakan untuk mengurangi pemindaian Wi-Fi: mengurangi, menunda, dan menggabungkan. Untuk informasi tentang teknik-teknik ini, lihat Mengoptimalkan Masa Pakai Baterai.