Foreground Service с тихим уведомлением - PullRequest
0 голосов
/ 17 февраля 2019

Контекст:

Я использовал пример проекта LocationUpdatesForegroundService от Google, чтобы узнать больше об услугах.

Я скачал проектчерез рабочий стол Github и запустил его на моем телефоне, все отлично, и проект делает то, что должен.

Мой телефон - Android 8.0.0, API 26

Проблема:

Уведомление службы переднего плана отображается в строке состояния после завершения работы приложения, как только это происходит, я слышу звук уведомления (звук по умолчанию).Однако я хотел бы, чтобы уведомление было тихим, как в некоторых приложениях, основанных на местоположении (например: Life360 )

Что я пробовал до сих пор:

Ничто из вышеперечисленного не помогло мне, я был бы очень признателен, если бы кто-то мог пролить свет на эту ситуацию.

Ответы [ 2 ]

0 голосов
/ 03 марта 2019

Решение состоит в том, чтобы использовать NotificationManager.IMPORTANCE_LOW и создать для него новый канал.После того, как канал создан, вы не можете изменить важность (ну, вы можете, но новая важность игнорируется).Информация о канале постоянно сохраняется системой, и любой созданный канал удаляется только при удалении приложения.Вы можете удалить канал как

nm.deleteNotificationChannel(nChannel.getId());

и воссоздать его с помощью

nm.createNotificationChannel(nChannel);

через ответ переполнения стека здесь Отключить звук из NotificationChannel

0 голосов
/ 21 февраля 2019

mChannel.setSound (null, null) сделает это, но вам нужно удалить / переустановить приложение, чтобы оно вступило в силу.Или изменение CHANNEL_ID на другое значение также создаст канал с обновленными настройками.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...