Junior — Middle
¿Cómo se puede solicitar al servidor los mensajes actualizados en el chat?
sobes.tech AI
Respuesta de la IA
Para solicitar mensajes actualizados en el chat en Android, generalmente se utilizan uno de los siguientes enfoques:
-
Encuesta periódica (Polling) — la aplicación envía solicitudes periódicas al servidor para obtener nuevos mensajes.
-
Encuestas largas (Long Polling) — el cliente envía una solicitud que el servidor mantiene abierta hasta que aparecen nuevos mensajes, y luego responde.
-
WebSocket — se establece una conexión bidireccional permanente, por la cual el servidor puede enviar mensajes nuevos en cualquier momento.
-
Firebase Cloud Messaging (FCM) — el servidor envía notificaciones push sobre nuevos mensajes, y luego el cliente solicita actualizaciones.
Ejemplo de una encuesta periódica simple usando Handler:
val handler = Handler(Looper.getMainLooper())
val runnable = object : Runnable {
override fun run() {
// Solicitud al servidor para obtener nuevos mensajes
fetchNewMessages()
handler.postDelayed(this, 5000) // repetir cada 5 segundos
}
}
handler.post(runnable)