Cita:
Iniciado por luisssmy No le das a cerrar, pero si que puedes cerrar las aplicaciones abiertas (entre ellas Whatsapp) y el proceso sigue corriendo. Si inicias el móvil ya está el proceso del whatsapp funcionando etc. Veo que no nos entendemos jaja. Muchas gracias de todos modos por la ayuda!!
Lo que tu quieres hacer consta de dos partes.
Por un lado tienes un
servicio de Android que se comenzará a ejecutar tan pronto como arranque el móvil y que estará siempre en segundo plano. Es el encargado de comunicarse con tu servidor para comprobar los mensajes que puedas tener pendiente y mostrarte una notificación en caso de que así sea. El servicio además obtiene los mensajes y lo guarda en la base de datos (SQLite) que tiene la aplicación de forma local.
La segunda parte es una aplicación "cliente". Cuando la abres consulta la base de datos local, donde el servicio ha dejado los nuevos mensajes. Ojo a esto! La aplicación no va al servidor otra vez a obtener los mensajes, sino que tu primer componente los ha ido obteniendo de forma transparente en un segundo plano, y tu solo los lees de forma local. Por eso cuando te han enviado un mesaje por wassap y te llega la notificación, puedes quitar internet y leerlo igualmente.
Piensa que tal y como funciona Android, cuando pasas tu aplicación "cliente" a segundo plano (es decir, cambias de tarea) puede quitarla de memoria. Pero el servicio que es quien consulta y genera las notificaciones, lo vas a tener ejecutando siempre de fondo.
Básicamente es asi como funciona y como lo tendrías que lograr: un servicio que haga la faena y la guarde de forma local y una aplicación que consulte los datos locales.