estoy un poco confundido acerca de cómo funcionan los servicios, sobre todo estas dos cosas:Android: ¿cómo es posible que un servicio siga funcionando después de que la Actividad se haya cerrado?
De http://developer.android.com/guide/topics/fundamentals/services.html:
Un servicio es "comenzó" cuando un componente de aplicación (tal como una actividad) se inicia mediante una llamada Comienza el servicio(). Una vez iniciado, un servicio puede ejecutarse en segundo plano indefinidamente, incluso si el componente que lo inició se destruye.
y:
Precaución: Un servicio se ejecuta en el hilo principal de su alojamiento proceso de servicio no crea su propio hilo y no se ejecuta en un proceso separado (a menos que se especifique lo contrario) .
Mis preguntas:
¿Cómo es posible para un servicio que fue iniciado por StartService() sobrevivir, si el hilo principal actividad se cierra? ¿O solo esos servicios sobreviven al cierre principal de la actividad, que están en un hilo separado?
¿Cómo puedo iniciar un servicio en un hilo separado? El documento dev en http://developer.android.com/guide/topics/fundamentals/services.html#ExtendingService solo muestra un ejemplo de cómo generar un hilo cuando se crea el servicio ... no cómo generar el servicio en sí mismo en un nuevo hilo ...
EDITAR: Se usaandroid:process=
en manifest.xml para iniciarlo en un hilo separado? (Si se empieza en un nuevo proceso, entonces tiene que ser en un hilo separado ..)
¿Podría aceptar la respuesta? Gracias –
@Kiran lo acepto, si mi segunda pregunta es respondida también. Ver mi edición sobre una adivinación de cómo resolverlo. – sydd
Normalmente genera hilos para distribuir la carga. Pero el propósito de un Servicio en sí es realizar algunas operaciones pesadas sin interferir con la Actividad. Responda a esta pregunta: "¿Puedes comenzar una actividad en un hilo separado?". Con toda probabilidad, la misma respuesta se aplica también a un Servicio –