Junior — Middle
Как да поискате от сървъра актуализирани съобщения в чата?
sobes.tech AI
Отговор от AI
За заявка за актуализирани съобщения в чата на Android обикновено се използва един от следните подходи:
-
Периодично опрашване (Polling) — приложението периодично изпраща заявки към сървъра, за да получи нови съобщения.
-
Дълго опрашване (Long Polling) — клиентът изпраща заявка, която сървърът държи отворена, докато не се появят нови съобщения, след което отговаря.
-
WebSocket — установява се постоянно двупосочно връзка, чрез която сървърът може по всяко време да изпрати нови съобщения.
-
Firebase Cloud Messaging (FCM) — сървърът изпраща push известия за нови съобщения, след което клиентът иска актуализации.
Пример за прост периодичен опрос с използване на Handler:
val handler = Handler(Looper.getMainLooper())
val runnable = object : Runnable {
override fun run() {
// Заявка към сървъра за получаване на нови съобщения
fetchNewMessages()
handler.postDelayed(this, 5000) // повтаря се на всеки 5 секунди
}
}
handler.post(runnable)