@ paulajcm было ядром:
Я полагаю, что Notification.Builder.setOnlyAlertOnce () будет иметь ожидаемый результат.
Другим аспектом, который следует учитывать, является то, что идентификатор уведомления должен быть уникальным, иначе вы никогда не будете искать этот тип уведомления снова, поскольку вы фактически установили этот идентификатор, чтобы он не возвращался снова.
builder.notify(JOB_TAG, id, notification) // id must be 'unique'
Другой вещью, которую я сделал, было переключение setOnlyAlertOnce(false)
для последнего сообщения, так что есть уведомление, что операция также завершена:
builder
.setContentText("Complete")
.setProgress(0,0,false)
.setOnlyAlertOnce(false)
notifications.notify(builder.build(), notificationId)
Так что теперь это понятно пользователюкогда длительное фоновое задание запускается и завершается, без ошибок между ними.