Как удалить активность из списка последних приложений?

Я запускаю активность из службы и хочу, чтобы она появилась в списке последних приложений.

Однако я хочу, чтобы действие было удалено из списка последних приложений, если я выхожу из приложения (например, нажмите кнопку в пользовательском интерфейсе активности, который вызывает finish()).

Исключение активности из недавнего списка приложений с помощью android:excludeFromRecents="true" не дает мне начального поведения активности, которое мне требуется, т.е. активности, отображаемой в последнем списке приложений.

Это возможно?

Ответ 1

использование

android:excludeFromRecents="true"

для действия в файле манифеста

android:excludeFromRecents

Независимо от того, следует ли исключить задачу, инициированную этим действием, из списка недавно использованных приложений ("последние приложения"). То есть, когда это действие является корневой активностью новой задачи, этот атрибут определяет, не должна ли задача отображаться в списке последних приложений. Установите "true", если задача должна быть исключена из списка; установите "false", если он должен быть включен. Значение по умолчанию неверно".

Ответ 2

Да, обычно, когда вы хотите иметь специальные свойства для Activity при запуске, вы добавляете специальные флаги в Intent. В этом случае FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS.

Обновлено:

Если вам нужно скрыть текущую текущую активность, вы можете использовать этот флаг в сочетании с FLAG_ACTIVITY_CLEAR_TOP, который отправит новое намерение в существующее действие. Вам придется подумать и, возможно, поэкспериментировать с тем, что происходит, когда пользователь перемещается вокруг вашего стека, и будет ли это делать ваше приложение снова появляться в последних приложениях.

источник