2013-12-13 3 views
0

У меня возникла проблема с переходом на текущий задний стек при обработке уведомлений. У меня есть два вида деятельности, деятельность. Вызывается активность B, текущий задний стек - A, B. После этого я нажимаю кнопку «Домой» -> «Перейдите на главный экран». В это время мое приложение получает уведомление. При обращении с этим уведомлением я хочу открыть свое приложение с обратным стеком, если A, B и B продолжают текущее состояние.Android: переход на текущий задний стек при обработке уведомлений

В каком виде я могу решить эту проблему?

Спасибо за помощь.

+0

http://developer.android.com/guide/topics/ui/notifiers/notifications.html. проверьте ** Сохранение навигации при запуске действия. ** – Raghunandan

+0

Если активность A вызывает активность C, а активность C вызывает активность D, а также активность A может вызвать активность B, как решить этот случай? (Если текущая активность B или D, я хочу сохранить текущий стек назад.) –

ответ

0

Попробуйте это:

  1. В манифесте установлен android:launchMode="singleTask" для ActivityB.
  2. В вашем уведомлении установлен PendingIntent, который вызовет ActivityB.
+0

Если активность A вызывает активность C, а активность C вызывает активность D, а также активность A может вызвать активность B, как решить этот случай? (Является ли текущая активность B или D, я хочу сохранить текущий стек назад.) –

+0

@ user2298077, Извините? Если ActivityB находится поверх backstack, вы увидите ActivityB, а стоп-память не будет изменена. Но если ActivityB не находится на вершине backstack, то backstack будет изменен - ​​все действия, созданные после ActivityB, будут уничтожены. Если у вас нет ActivityB в backstack, тогда откроется только ActivityB. – nfirex

+0

Возможно, вам нужно использовать это для вашей второй ситуации: http://stackoverflow.com/a/13632559/1001401 – nfirex

Смежные вопросы