У меня есть два вида деятельности FirstActivity и SecondActivity.
FirstActivity имеет фильтр намерений MAIN, LAUNCHER и DEFAULT.
SecondActivity - это обычное действие, и в AndroidManifest не установлены другие флаги.
Мое приложение поддерживает C2DM, и при получении уведомления отображается значок на панели задач, а при нажатии открывается SecondActivity.
Прибытие уведомлений имеет два сценария:
Во-первых, мое приложение уже запущено, когда пришло уведомление, а во-вторых, мое приложение полностью не запущено.
По первому сценарию все нормально. Получено уведомление, я щелкнул в раскрывающемся списке уведомлений, и отображается моя вторая активность. Когда я нажимаю обратно, SecondActivity завершает работу и приложение переходит в фоновый режим. Когда я снова запускаю свое приложение из Недавних приложений, оно отображает FirstActivity, которое является правильным, поскольку оно имеет значения MAIN, LAUNCHER и DEFAULT.
Во втором сценарии получено уведомление, я щелкнул его в раскрывающемся списке уведомлений, и отображается моя вторая активность. Когда я нажимаю обратно, SecondActivity завершает работу и приложение переходит в фоновый режим. Когда я снова запускаю свое приложение из последних Приложений, оно отображает SecondActivity, что неправильно. Я ожидаю, что FirstActivity будет отображаться, потому что это должен быть новый старт.
Я попробовал ForceKilling приложение после второго сценария, но результат тот же, мне нужно было перезагрузить телефон, чтобы снова запустить FirstActivity.
Вы, ребята, сталкивались с такой же проблемой? или это только у меня так? Что вы думаете не так с моей конфигурацией?
Я также попытался установить значение noHistory = false для SecondActivity, но результаты остались прежними.