¿Cómo mantener un servicio con los oyentes vivo después de desatar en Android?

Actualmente estoy creando una aplicación de chat utilizando XMPP. He creado un servicio para manejar la conexión y los mensajes entrantes, agregando los diferentes oyentes necesarios.

El problema es, sin embargo, cuando la actividad llama desvincular el servicio (por ejemplo, cuando la actividad se detiene o se detiene cuando el usuario pone la aplicación en segundo plano), el servicio se destruye, aunque tiene oyentes dentro de él (como un chat Oyente, oyente de mensajes, etc.)

¿Cómo puedo mantener vivo mi servicio para poder recibir mensajes cuando la aplicación está en segundo plano? He leído que el uso de un servicio de primer plano es muy mal visto, así que prefiero evitar que si es posible.

One Solution collect form web for “¿Cómo mantener un servicio con los oyentes vivo después de desatar en Android?”

Realmente tuve esto al desarrollar mi aplicación recientemente.

El truco es iniciar el Service por su propia cuenta y luego vincularlo con el Intent . Cuando se desvincula de él, el Service seguirá funcionando.

 Intent i = new Intent(this, DataService.class); startService(i); bindService(i, this, Context.BIND_AUTO_CREATE); 
  • Android: Cómo detener el servicio de música de mi aplicación, si otra aplicación reproduce música.
  • Crear notificación cada día
  • El servicio no se reinicia después de que "Clear Memory" + appWidget se bloquea
  • Subida de imágenes de Android: ¿Utilizar actividad o servicio?
  • Servicio de ejecución en el fondo?
  • Obtener: No se permite iniciar el servicio Intención ... sin permiso Proceso de servicio es malo
  • ¿Por qué NullPointerException ocurre con el uso de BillingService estándar?
  • En Android: ¿Cómo llamar a la función de la actividad de un servicio?
  • ¿Es posible ejecutar mi servicio por tiempo indefinido?
  • PopUp diálogo Android de hilo de fondo
  • cómo abrir la configuración de accesibilidad de mi aplicación directamente?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.