Junior — Middle
Kuidas küsida serverilt uuendatud sõnumeid vestluses?
sobes.tech AI
Vastus AI-lt
Selleks, et Androidis vestluses uuendatud sõnumeid küsida, kasutatakse tavaliselt üht järgmistest lähenemistest:
-
Perioodiline küsitlus (Polling) — rakendus saadab regulaarselt serverile päringuid, et saada uusi sõnumeid.
-
Pikk küsitlus (Long Polling) — klient saadab päringu, mille server hoiab avatud kuni uute sõnumiteni, siis vastab.
-
WebSocket — luuakse püsiv kahepoolne ühendus, mille kaudu server võib igal ajal saata uusi sõnumeid.
-
Firebase Cloud Messaging (FCM) — server saadab push-teavitusi uute sõnumite kohta, mille järel klient küsib uuendusi.
Näide lihtsast perioodilise küsitluse kasutamisest Handler abil:
val handler = Handler(Looper.getMainLooper())
val runnable = object : Runnable {
override fun run() {
// Päring serverile uute sõnumite saamiseks
fetchNewMessages()
handler.postDelayed(this, 5000) // kordub iga 5 sekundi järel
}
}
handler.post(runnable)