Interromper um serviço em primeiro plano

Se você quiser interromper a execução de um serviço em primeiro plano, há duas opções. Você pode interromper o serviço ou deixá-lo em execução, mas removê-lo do primeiro plano.

É possível interromper um serviço em primeiro plano da mesma forma que você interrompe qualquer serviço. O serviço pode chamar o próprio método stopSelf() ou outro componente pode interrompê-lo chamando stopService(). Se você interromper o serviço enquanto ele estiver em execução em primeiro plano, a notificação será removida.

Para remover um serviço do primeiro plano, chame stopForeground(int) de dentro do serviço. Esse método usa um booleano, que indica se a notificação da barra de status também deve ser removida. O serviço continua em execução, mas não é mais um serviço em primeiro plano.