Я столкнулся с одной проблемой - очисткой истории деятельности. У меня есть следующее следствие, где появляется моя проблема:Android: Очистить Деятельность История
A(SplashScreen)->B(GuestScreen)->C(Screen for signed users)->Press Home Button->A->B->Press Back Button->C->Press Back BUtton->B->Press Back Button->exit from the app.
Я пробовал разные способы ее решения и нашел только одно довольно странное решение, в течение установки практически всех видов деятельности в SingleInstance и setting all intent flags to CLEAR_TOP and NEW_TASK
, но все мероприятия представляя какое-то странное (не как обычно я имею в виду, во-первых, появляется пустой черный экран с actionBar и через ~ 1 секунду появляется мой реальный макет) и с небольшой задержкой, как я уже сказал. Мне не понравилось это решение, несмотря на то, что все закрывается правильно и в правильных последствиях. Теперь я пытаюсь заставить его нормально работать без этой задержки и странного черного экрана на мгновение. Я пытался играть с флагами намерений, например, CLEAR_TASK, CLEAR_TOP
. Пытался использовать clearTaskOnLaunh for root activity and finishOnLaunch in manifest file
для других, где это необходимо, не помогает. Как это исправить?
EDIT:
Стараясь снова установить clearTaskOnLaunch-А. Я вижу следующий журнал при запуске приложения первый раз (А уже под названием B без каких-либо флагов):
Main stack:
TaskRecord{42610648 #869 A }
Intent { flg=0x10000000 cmp=/.activities.SplashActivity }
Hist #4: ActivityRecord{413cf8f8 /.activities.GuestActivity}
Intent { cmp=/.activities.GuestActivity }
ProcessRecord{414fdf60 15651:/10103}
// активность гостей (B) вызывает UserActivity (C):
Intent { flg=0x10000000 cmp=/.activities.SplashActivity }
Hist #3: ActivityRecord{415c86f0 /.activities.UserActivity}
Intent { cmp=/.activities.UserActivity }
ProcessRecord{414fdf60 15651:/10103}
// Пресс Главная кнопка и приложение для запуска снова (A вызвал B):
TaskRecord{42610648 #869 A cashongo.app.peachy}
Intent { flg=0x10000000 cmp=c/.activities.SplashActivity }
Hist #5: ActivityRecord{42127398/.activities.GuestActivity}
Intent { cmp=/.activities.GuestActivity }
ProcessRecord{414fdf60 15651:/10103}
Hist #4: ActivityRecord{415c86f0 /.activities.UserActivity}
Intent { cmp=/.activities.UserActivity }
ProcessRecord{414fdf60 15651:/10103}
Та же проблема снова, последняя активность в истории. Если я нажму кнопку «Назад», я получу UserActivity.
непонятный. когда вы нажимаете главную кнопку, текущая активность приостанавливается и переходит на главный экран. http://developer.android.com/guide/components/tasks-and-back-stack.html – Raghunandan
Мне просто нужно очистить всю историю или задачу при запуске приложения опять же, что в стеке не будет никаких ранее сохраненных действий. – user1376885
Где вы запускаете свое приложение, когда у вас есть clearTaskOnLaunh для корневой активности? Является ли корневая активность? –