Намерение - если действие выполняется, перенести его на передний план, иначе начать новое (из уведомления)

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

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

До сих пор намерение / ожидание намерения для этого уведомления у меня есть

private static PendingIntent prepareIntent(Context context) {
    Intent intent = new Intent(context, MainActivity.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);

    return PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
}

и странно, иногда это работает, иногда нет ... Я чувствую, что уже пробовал каждую комбинацию флагов.

Ответы на вопрос(7)

Ваш ответ на вопрос