Как удалить уведомление переднего плана в Android Lollipop?

Я хочу остановить / отклонить уведомление переднего плана для службы для медиапланера, что очень похоже на реализацию Google для Google Music.

Например, в Google Music, если вы играете музыку, уведомление не может быть удалено. Однако, если вы приостановите музыку, она может.

Это полностью отличается от того, как он реализован на Android 4.4, где уведомление начинается только после выхода из приложения и удаляется при возврате в приложение. Я не вижу, как реализовать это, либо учитывая требования к службе, чтобы иметь уведомление.

Любая помощь приветствуется.

    Как удалить фоновое примечание в Android Lollipop?

    Вы можете удалить свое собственное Notification переднего плана, вызвав stopForeground() из Service которая вызвала startForeground() .

    Например, в Google Music, если вы играете музыку, уведомление не может быть удалено. Однако, если вы приостановите музыку, она может.

    Предположительно, они обновляют значение setOngoing() для Notification основанное на том, играет ли музыка.

    Вы также можете удалить уведомление сложным способом:

    • Начать 1-й сервис с помощью startForeground(1, new Notification());
    • Начать startForeground(1, new Notification()); услугу с помощью startForeground(1, new Notification()); И немедленно остановить его

    В результате 1-я услуга все еще работает на переднем плане, но уведомление прекращается благодаря остановке второй службы. Я нашел это случайно :).