Mentransfer data menggunakan adaptor sinkronisasi

Catatan: Kami merekomendasikan WorkManager sebagai solusi untuk sebagian besar kasus penggunaan pemrosesan latar belakang. Harap baca panduan pemrosesan latar belakang untuk mengetahui solusi terbaik bagi Anda.

Sinkronisasi data antara perangkat Android dan server web dapat menjadikan aplikasi Anda jauh lebih berguna dan menarik bagi pengguna. Misalnya, transfer data ke server web akan membuat cadangan yang berguna, dan transfer data dari server akan membuatnya tersedia bagi pengguna, bahkan saat perangkat sedang offline. Dalam beberapa kasus, pengguna mungkin merasa lebih mudah untuk memasukkan dan mengedit datanya dalam antarmuka web dan data tersebut langsung tersinkron pada perangkatnya, atau pengguna mungkin ingin mengumpulkan data selama beberapa waktu lalu menguploadnya sekaligus ke area penyimpanan terpusat.

Meskipun Anda dapat mendesain sistem sendiri untuk melakukan transfer data dalam aplikasi, pertimbangkan untuk menggunakan framework adaptor sinkronisasi Android. Framework ini membantu mengelola dan mengotomatiskan transfer data, serta mengoordinasikan operasi sinkronisasi di berbagai aplikasi. Saat menggunakan framework ini, Anda dapat memanfaatkan beberapa fitur yang tidak tersedia untuk skema transfer data yang Anda desain sendiri:

Arsitektur plugin
Memungkinkan Anda menambahkan kode transfer data ke sistem dalam bentuk komponen yang dapat dipanggil.
Eksekusi otomatis
Memungkinkan Anda mengotomatiskan transfer data berdasarkan berbagai kriteria, termasuk perubahan data, waktu berlalu, atau waktu dalam sehari. Selain itu, sistem juga akan menambahkan transfer yang tidak dapat dijalankan ke antrean, dan akan menjalankannya jika memungkinkan.
Pemeriksaan jaringan otomatis
Sistem hanya menjalankan transfer data Anda saat perangkat memiliki konektivitas jaringan.
Peningkatan performa baterai
Memungkinkan Anda memusatkan semua tugas transfer data aplikasi di satu tempat agar semuanya berjalan di waktu yang sama. Transfer data Anda juga dijadwalkan bersamaan dengan transfer data dari aplikasi lain. Faktor ini mengurangi frekuensi sistem harus mengaktifkan jaringan, sehingga akan mengurangi durasi penggunaan baterai.
Autentikasi dan pengelolaan akun
Jika aplikasi memerlukan kredensial pengguna atau login server, Anda dapat secara opsional mengintegrasikan autentikasi dan pengelolaan akun ke dalam transfer data.

Class ini menunjukkan cara untuk membuat adaptor sinkronisasi dan Service terikat yang menggabungkannya, cara menyediakan komponen lain yang membantu Anda menyambungkan adaptor sinkronisasi ke dalam framework, serta cara menjalankan adaptor sinkronisasi agar beroperasi dalam berbagai cara.

Catatan: Adaptor sinkronisasi berjalan secara asinkron, sehingga Anda harus menggunakannya dengan ekspektasi bahwa adaptor akan mentransfer data secara rutin dan efisien, tetapi tidak secara instan. Jika Anda perlu melakukan transfer data real-time, Anda harus melakukannya di AsyncTask atau IntentService.

Tutorial

Membuat authenticator stub
Pelajari cara menambahkan komponen penanganan akun yang diharapkan oleh adaptor sinkronisasi untuk menjadi bagian dari aplikasi Anda. Tutorial ini menunjukkan kepada Anda cara membuat komponen autentikasi stub agar lebih mudah.
Membuat penyedia konten stub
Pelajari cara menambahkan komponen konten penyedia yang diharapkan oleh adaptor sinkronisasi untuk menjadi bagian dari aplikasi Anda. Tutorial ini mengasumsikan bahwa aplikasi Anda tidak menggunakan penyedia konten, sehingga tutorial tersebut menunjukkan kepada Anda cara menambahkan komponen stub. Jika aplikasi Anda sudah memiliki penyedia konten, Anda dapat melewati tutorial ini.
Membuat adaptor sinkronisasi
Pelajari cara merangkum kode transfer data dalam komponen yang dapat dijalankan oleh framework adaptor sinkronisasi secara otomatis.
Menjalankan Adaptor Sinkronisasi
Pelajari cara memicu dan menjadwalkan transfer data menggunakan framework adaptor sinkronisasi.