Red de conocimiento del abogados - Bufete de abogados - Método de inicio del servicio

Método de inicio del servicio

Los amigos que saben algo sobre el servicio definitivamente sabrán que hay dos formas de iniciar el servicio, a saber, startService y bindService. Entonces, ¿cuál es la diferencia entre estos dos servicios?

Características de startService:

Método de inicio:

Se inicia a través del método startService() en otros componentes.

Método de parada:

Deténgase mediante el método stopService() en otros componentes, o llame al método stopSelf() en el servicio.

Ciclo de vida: <. /p>

onCreate()---gt; onStartCommand() (el método onStart() está obsoleto) ---gt; onDestory()

Una vez iniciado, el servicio puede permanecer en segundo plano. Ejecutándose indefinidamente, incluso si el componente que inició el servicio ha sido destruido, no se verá afectado hasta que se detenga.

Nota: Si el servicio ya se inició, onCreate() no se ejecutará repetidamente. pero se llamará a onStart() y a onStartCommand().

onDestory() se llama cuando el servicio se detiene. El servicio sólo se interrumpirá una vez.

Método de comunicación con otros componentes:

No existe un método de comunicación predeterminado. Después de iniciar el servicio, el servicio se ejecutará de forma independiente

Pasos de uso: p>

(1) Definir una clase que hereda el servicio

(2) Configurar el servicio en el archivo de configuración Manifest.xml

(3) Usar contexto para llamar a startService (Intent) método para iniciar el servicio

(4) Cuando ya no esté en uso, llame al método stopService(Intent) para detener el servicio

Características de bindService:

Método de inicio:

Iniciado mediante el método bindService() en otros componentes.

Método de parada:

Todos los componentes vinculados al servicio serán destruidos, o todos los componentes vinculados al servicio se detendrán después de llamar al método unbindService

Ciclo de vida :

onCreate() ---gt; onBind()---gt; onunbind()---gt; onDestory()

Una vez iniciado, solo cuando todos los enlaces Los componentes del servicio especificado se destruirán o todos los componentes vinculados al servicio se detendrán después de llamar al método unbindService

Nota: el método de vinculación inicia el servicio y lo vincula. Si la persona que llama cuelga, el servicio también se detendrá.

El enlazador puede llamar a métodos en el servicio

Métodos de comunicación con otros componentes:

La comunicación se puede realizar a través de ServiceConnection El componente puede interactuar con el servicio, enviar solicitudes, obtener resultados. e incluso IPC se utiliza para realizar estas operaciones entre procesos

Pasos de uso:

(1) Definir una clase que hereda el servicio

(2) En la configuración file Manifest.xml Configure el servicio

(3) Utilice el contexto para llamar al método bindService(Intent, ServiceConnection, int) para iniciar el servicio

(4) Cuando ya no esté en uso , llame al método unbindService(ServiceConnection) Detenga este servicio