Detener un servicio cuando ninguna de las actividades está en primer plano

Tengo un servicio que es utilizado por todas mis actividades y se debe parar cuando ninguna de las actividades está en el primero plano pero subsistencia que funciona todo el tiempo cuando una actividad es visible. Dado que Android no mantiene un estado interno para saber cuál es la aplicación en primer plano, ¿hay alguna manera limpia de lograr esto?

Supongo que @biquillo malinterpretó tu pregunta, pero encontré buena idea en la respuesta de CommonsWare .

Básicamente, puede iniciar el servicio sólo por enlazar a él y establecer la bandera para crear si no se ha creado ya. Entonces cada vez que se crea alguna actividad se une al servicio, onDestroy se desvincula .. Eso hará que el servicio sea destruido una vez cuando no hay actividad vinculada a ella ..

Espero que ayude y resolvió su problema;) Saludos

Vea el ciclo de vida de Actividad en http://developer.android.com/reference/android/app/Activity.html

Entender cuándo se invocan los métodos onStart, onStop y onPause. A continuación, puede iniciar startService / stopService desde su interior.

  • Impedir que la actividad principal se inicie si ya se está ejecutando
  • Mostrar el teclado automáticamente
  • ¿Pasar un paquete en startActivity ()?
  • Hamburguesa, menú, giro, flecha, nuevo, actividad
  • Establecer argumentos de fragmento de la actividad
  • Cómo obtener Referencia de actividad en la clase View?
  • El paquete de compatibilidad de Android no incluye Activity.getFragmentManager ()
  • Haga clic en la notificación inicia la actividad dos veces.
  • Intenta invocar el método virtual 'void android.widget.TextView.setText (java.lang.CharSequence)' en una referencia de objeto nulo
  • Averigüe si la actividad actual será la raíz de la tarea eventualmente, después de que las actividades de acabado pendientes hayan desaparecido
  • Actividad inicial de Android-Library-Project
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.