Interromper um serviço em primeiro plano

Se você quiser que um serviço em primeiro plano pare de ser executado, há duas opções. É possível interromper o serviço ou deixá-lo em execução, mas removê-lo do primeiro plano.

Você pode interromper um serviço em primeiro plano da mesma forma que interromperia qualquer serviço. O serviço pode chamar o próprio stopSelf() método 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 precisa ser removida. O serviço continua sendo executado, mas não é mais um serviço em primeiro plano.