Документация в FLAG_ACTIVITY_CLEAR_TOP
говорит
Текущий запущенный экземпляр [...] либо получит новое намерение, которое вы здесь начинаете, в своем методе onNewIntent ()или будь сам закончен и перезапущен с новым намерением. Если он объявил свой режим запуска «множественным» (по умолчанию), и вы не установили FLAG_ACTIVITY_SINGLE_TOP в том же самом намерении, то он будет завершен и воссоздан;для всех других режимов запуска или если установлен FLAG_ACTIVITY_SINGLE_TOP, то это намерение будет доставлено в onNewIntent () текущего экземпляра.
В вашем случае, я предполагаю, что у вашего MainMenuActivity
есть режим "множественного запуска". Поскольку вы не установили FLAG_ACTIVITY_SINGLE_TOP
, он был завершен и перезапущен.
Поэтому, если вы используете
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|FLAG_ACTIVITY_SINGLE_TOP);
, то, согласно документации, экземпляр MainMenuActivity
сохранит свое состояние и *Будет вызываться 1018 *.
Примечание: вы можете использовать setIntent()
, чтобы сделать Intent
, который передается в onNewIntent()
"*" 1026 * из Activity