Я пытаюсь заставить мою Службу
работать на переднем плане. Я пытался использовать этот пример (пожалуйста, посмотрите раздел "Running a Service in the Foreground"), но startForeground()
фактически не показывает мое уведомление. И никаких исключений не возникает. Чтобы оно появилось, мне нужно использовать NotificationManager
, как объяснялось здесь. С NotificationManager
мое уведомление работает, но я не уверен, что мой Service
находится на переднем плане после этого "тихого" вызова startForeground()
.
Что может быть не так?
EDIT: Я только что протестировал этот пример проекта, который должен продемонстрировать startForeground()
, но он не работает! Я использую API v7.0, я тестировал его как на эмуляторе, так и на реальном устройстве (SE Xperia Neo). Уведомление не появляется.
EDIT2: если я пытаюсь вызвать setForeground()
, то получаю предупреждение setForeground: ignoring old API call
.
Я также пытался использовать startForegroundCompat()
, как описано здесь, но эффект абсолютно тот же. Я проверяю, находится ли моя служба на переднем плане, используя ActivityManager.RunningServiceInfo
, как описано здесь, и вижу, что моя служба не находится на переднем плане.