Biasanya, traffic jaringan yang dimulai oleh aplikasi Anda dapat dioptimalkan secara signifikan, karena Anda dapat merencanakan resource jaringan yang diperlukan dan menetapkan jadwal untuk mengaksesnya. Dengan penjadwalan yang tepat, Anda dapat menentukan periode istirahat yang signifikan untuk radio perangkat, sehingga akan menghemat daya. Ada beberapa Android API yang dapat membantu melakukan penjadwalan akses jaringan, dan sebagian dari fungsi ini dapat mengatur akses jaringan untuk aplikasi lain, sehingga mengoptimalkan performa baterai.
Pelajaran ini menunjukkan cara mengurangi penggunaan baterai dengan menerapkan teknik untuk mengoptimalkan traffic jaringan yang dimulai oleh aplikasi
Menumpuk dan menjadwalkan permintaan jaringan
Pada perangkat seluler, proses menyalakan radio, mengaktifkan koneksi, dan menjaga radio tetap aktif menggunakan daya dalam jumlah besar. Oleh karena itu, memproses masing-masing permintaan secara acak dapat menghabiskan daya yang signifikan dan mengurangi masa pakai baterai. Pendekatan yang lebih efisien adalah membuat antrean serangkaian pemintaan jaringan dan memprosesnya secara bersamaan. Dengan pendekatan ini, sistem hanya akan menggunakan daya yang diperlukan untuk menyalakan radio satu kali, dan tetap mendapatkan semua data yang diminta oleh aplikasi.
Menggunakan API penjadwal akses jaringan untuk membuat antrean dan memproses permintaan data aplikasi dapat meningkatkan efisiensi daya aplikasi secara signifikan. Penjadwal menghemat daya baterai dengan mengelompokkan permintaan untuk diproses oleh sistem. Penjadwal dapat meningkatkan efisiensi lebih lanjut dengan menunda beberapa permintaan hingga permintaan lain mengaktifkan radio seluler, atau menunggu hingga perangkat mengisi daya. Penjadwal menunda dan menumpuk permintaan jaringan di seluruh sistem dan aplikasi pada perangkat, sehingga memberi keuntungan pengoptimalan dibandingkan dengan yang dapat dilakukan oleh masing-masing aplikasi.
Mengizinkan sistem memeriksa konektivitas
Salah satu penyebab paling serius dan tidak terduga dari masalah baterai yang cepat habis adalah pengguna melakukan perjalanan ke tempat yang berada di luar jangkauan menara seluler atau titik akses. Dalam situasi ini, pengguna biasanya tidak menggunakan perangkatnya, tetapi menyadari perangkat mulai terasa hangat, lalu baterai menjadi lemah atau habis.
Masalah dalam skenario ini adalah sebuah aplikasi menjalankan proses latar belakang yang terus mengaktifkan radio seluler secara berkala untuk mencari sinyal seluler, tetapi tidak berhasil menemukannya. Mencari sinyal seluler merupakan salah satu operasi yang paling menguras daya pada perangkat.
Salah satu cara mencegah terjadinya masalah ini bagi pengguna aplikasi Anda adalah dengan menggunakan metode pemeriksaan konektivitas yang hemat baterai. Untuk permintaan jaringan yang dimulai oleh aplikasi, jadwalkan tugas menggunakan WorkManager, dengan batasan yang akan dijalankan tugas saat jaringan tersedia.