Android
Real Time
Implementasi Live Query Android dengan Back4App
11 mnt
aplikasi waktu nyata menggunakan live queries pendahuluan live queries dimaksudkan untuk digunakan dalam aplikasi reaktif waktu nyata , di mana hanya menggunakan paradigma kueri tradisional akan menghadapi beberapa masalah, seperti waktu respons yang meningkat dan penggunaan jaringan serta server yang tinggi live queries harus digunakan dalam kasus di mana anda perlu memperbarui halaman secara terus menerus dengan data segar yang berasal dari database, yang sering terjadi di, tetapi tidak terbatas pada, permainan online, klien pesan, dan daftar tugas bersama bagian ini menjelaskan cara menggunakan live query back4app di lingkungan android melalui back4app tutorial ini menggunakan aplikasi dasar yang dibuat di android studio arctic fox 2020 3 1 patch 1 dengan compilesdk 30 compilesdk 30 , minsdk 21 minsdk 21 dan targetsdk 30 targetsdk 30 kapan saja, anda dapat mengakses proyek lengkap melalui repositori github kami repositori contoh kotlin repositori contoh java tujuan berikut adalah pratinjau dari apa yang akan kita capai prasyarat untuk menyelesaikan tutorial ini, kami membutuhkan android studio sebuah aplikasi yang dibuat di back4app catatan ikuti tutorial aplikasi parse baru untuk belajar cara membuat aplikasi parse di back4app sebuah aplikasi android yang terhubung ke back4app catatan ikuti tutorial instalasi parse sdk untuk membuat proyek android studio yang terhubung ke back4app sebuah perangkat (atau perangkat virtual ) yang menjalankan android 4 1 (jelly bean) atau yang lebih baru 1 aktifkan live query sebelum anda mulai coding, perlu memiliki sebuah kelas di database anda untuk mengaktifkan live query untuk melakukannya, cukup temukan aplikasi anda di situs web back4app , dan klik pada dasbor dasbor > buat kelas buat kelas , seperti yang ditunjukkan di sini sekarang, untuk mengaktifkan fitur live query, masuk ke akun anda di situs web back4app , temukan aplikasi anda dan klik pada pengaturan server pengaturan server , kemudian temukan blok “url server dan live query” dan klik pada pengaturan pengaturan kemudian, anda akan tiba di halaman seperti di bawah ini di halaman ini anda perlu memeriksa opsi aktifkan subdomain back4app anda aktifkan subdomain back4app anda , opsi aktifkan live query aktifkan live query , dan semua kelas yang anda inginkan agar live query diaktifkan, seperti yang ditunjukkan di bawah penting untuk mengaktifkan webhosting untuk menggunakan live queries, karena domain anda akan berfungsi sebagai server langsung catatan untuk mengetahui lebih lanjut tentang webhosting lihat di tutorial webhosting back4app 2 siapkan klien livequery github resmi parse server memiliki implementasi klien live query untuk android https //github com/parse community/parselivequery android penting untuk mengimplementasikan klien live query resmi, yang bekerja dengan baik untuk melakukannya, tambahkan baris berikut ke aplikasi anda app/build gradle app/build gradle file, di bagian dependensi dan sinkronkan proyek anda app/build gradle 1 dependencies { 2 3 // don't forget to change the line below with the latest version of parse sdk for android 4 implementation "com github parse community parse sdk android\ parse 1 26 0" 5 implementation 'com github parse community\ parselivequery android 1 2 2' 6 7 } dalam proyek ini, kita juga akan membuat kelas bernama pesan pesan , yang akan berisi pesan pesan kita 3 berlangganan ke kueri anda untuk mulai menggunakan live queries, pertama buatlah livequeryclient livequeryclient yang akan mengelola koneksi websocket untuk anda untuk melakukan ini, anda harus menyediakan id aplikasi, kunci javascript nya dan juga url server live query yang telah anda siapkan di langkah pertama 1 parse initialize(new parse configuration builder(this) 2 applicationid(getstring(r string back4app app id)) 3 clientkey(getstring(r string back4app client key)) 4 server(getstring(r string back4app server url)) 5 build());1 parse initialize(parse configuration builder(this) 2 applicationid(getstring(r string back4app app id)) 3 clientkey(getstring(r string back4app client key)) 4 server(getstring(r string back4app server url)) 5 build()) kode untuk menginisialisasi livequeryclient livequeryclient adalah sebagai berikut 1 parselivequeryclient parselivequeryclient = parselivequeryclient factory getclient();1 val parselivequeryclient = parselivequeryclient factory getclient() kami memiliki adapter recyclerview bernama messageadapter messageadapter fungsi fungsi messageadapter dipicu ketika objek ditambahkan, dihapus, atau diperbarui di sini fungsi messageadapter messageadapter kami 1 public void additem(parseobject t) { 2 this list add(t); 3 notifyiteminserted(list size() 1); 4 } 5 6 public void removeitem(parseobject object) { 7 for (int i = 0; i < list size(); i++) { 8 if (list get(i) getobjectid() equals(object getobjectid())){ 9 list remove(i); 10 notifyitemremoved(i); 11 notifyitemrangechanged(i, list size()); 12 return; 13 } 14 } 15 } 16 public void updateitem(parseobject object) { 17 for (int i = 0; i < list size(); i++) { 18 if (list get(i) getobjectid() equals(object getobjectid())){ 19 list set(i,object); 20 notifydatasetchanged(); 21 return; 22 } 23 } 24 }1 fun additem(t parseobject?) { 2 list!! add(t!!) 3 notifydatasetchanged() 4 } 5 6 fun removeitem(`object` parseobject) { 7 for (i in list!! indices) { 8 if (list!!\[i] objectid == `object` objectid) { 9 list!! removeat(i) 10 notifyitemremoved(i) 11 notifyitemrangechanged(i, list!! size) 12 return 13 } 14 } 15 } 16 17 fun updateitem(`object` parseobject) { 18 for (i in list!! indices) { 19 if (list!!\[i] objectid == `object` objectid) { 20 list!!\[i] = `object` 21 notifydatasetchanged() 22 return 23 } 24 } 25 } kemudian, anda harus membuat parsequery parsequery untuk jenis objek apa yang ingin anda langgani sebuah langganan adalah pemicu peristiwa, yang akan memicu peristiwa ketika terjadi perubahan pada objek yang memenuhi kueri anda dalam contoh ini, anda akan membuat kueri dasar dan akan melanggan semua perubahan yang dilakukan pada objek message message lihat lebih lanjut tentang kueri dan langganan di dokumentasi resmi kueri parse 1 parsequery\<parseobject> parsequery = new parsequery<>("message"); 2 subscriptionhandling = parselivequeryclient subscribe(parsequery); 3 subscriptionhandling handlesubscribe(q > { 4 subscriptionhandling handleevent(subscriptionhandling event create, (query, object) > { 5 mainactivity this runonuithread(() > { 6 messagesadapter additem(object); 7 }); 8 }); 9 subscriptionhandling handleevent(subscriptionhandling event delete, (query, object) > { 10 mainactivity this runonuithread(() > { 11 messagesadapter removeitem(object); 12 }); 13 }); 14 subscriptionhandling handleevent(subscriptionhandling event update, (query, object) > { 15 mainactivity this runonuithread(() > { 16 messagesadapter updateitem(object); 17 }); 18 }); 19 });1 val parsequery = parsequery\<parseobject>("message") 2 subscriptionhandling = parselivequeryclient!! subscribe(parsequery) 3 subscriptionhandling!! handlesubscribe { subscriptionhandling!! handleevent(subscriptionhandling event create 4 ) { parsequery\<parseobject?>?, `object` parseobject? > 5 runonuithread { messagesadapter!! additem(`object`) } 6 } 7 subscriptionhandling!! handleevent(subscriptionhandling event delete 8 ) { parsequery\<parseobject?>?, `object` parseobject? > 9 runonuithread { messagesadapter!! removeitem(`object`!!) } 10 } 11 subscriptionhandling!! handleevent(subscriptionhandling event update 12 ) { parsequery\<parseobject?>?, `object` parseobject? > 13 runonuithread { messagesadapter!! updateitem(`object`!!) } 14 } 15 } catatan kami memicu semua peristiwa ini di aplikasi anda juga dapat memicu peristiwa buat, perbarui, dan hapus ini dari back4app (dari tabel atau konsol javascript) selesai! pada titik ini, anda memiliki pengetahuan tentang cara menggunakan live queries untuk membuat aplikasi reaktif waktu nyata di lingkungan android dan juga cara mengatur live query menggunakan back4app sekarang anda dapat mulai menerapkannya di aplikasi anda sendiri anda sekarang siap untuk menjelajahi fitur inti parse server https //www back4app com/product/parse server dan add on back4app https //www back4app com/product/addons