Cara yang sulit tetapi benar untuk melakukannya adalah dengan membuat ContentProvider
custom kustom Anda sendiri untuk aplikasi Anda dan perbarui semua data yang diterima dari layanan web dan pemberitahuan push ke ContentProvider
ini . Saat Activity
kembali ke latar depan, memperbarui dirinya sendiri dengan data baru yang disediakan oleh ContentProvider
.
Ini sulit karena membuat ContentProvider
custom khusus adalah banyak pekerjaan. Ini adalah benar cara karena sesuai dengan perilaku aplikasi seluler dan dengan arsitektur Android:katakanlah pengguna mengaktifkan layanan web atau beberapa tugas komputasi intensif, dan kemudian menutup aplikasi; atau katakanlah pemberitahuan push tiba dan mengharuskan data aplikasi diperbarui dan ditampilkan. Dalam kedua kasus tersebut, Activity
app aplikasi s mungkin tidak lagi di latar depan, tetapi Service
dapat digunakan untuk melakukan beberapa operasi non-UI. Sekarang di akhir operasi itu, Service
membuat perubahan pada data melalui ContentProvider
, dan saat pengguna mengaktifkan aplikasi lagi, Activity
s mendapatkan data baru mereka dari ContentProvider
.
Mengutip tutorial resmi:
Penyedia konten adalah antarmuka standar yang menghubungkan data dalam satu proses dengan kode yang berjalan di proses lain.
Sebagai pengembang, Anda harus selalu berasumsi bahwa pengguna dapat memanggil aplikasi kapan saja dan menutupnya kapan saja. Terlepas dari apakah Activity
berada di latar depan atau tidak, data aplikasi perlu diperbarui dan dipelihara dengan benar.
Aplikasi Google sendiri menggunakan ContentProvider
khusus s. Gmail
aplikasi khususnya menggunakan ContentProvider
untuk mendapatkan email baru saat konektivitas jaringan tersedia dan menampilkan email secara offline. Facebook
, WhatsApp
&Twitter
Aplikasi Android juga menggunakan ContentProvider
s.