Теперь еще пройдемся по некоторым флагам запуска Активностей. Начнем с флага FLAG_ACTIVITY_CLEAR_TASK. Данный флаг используется в сочетании с флагом FLAG_ACTIVITY_NEW_TASK. Этот флаг появился c API Level 11. Задача вызываемой Активности будет очищена, а вызываемая Активность станет в ней корневой.
Приложение АР0003 в очередной раз мутировало. В Активность В была добавлена кнопка запуска Активности С из приложения АР0004 с данными флагами.
Запускаем приложение АР0004 и последовательно запускаем все Активности от А до D.
Теперь стек задачи 61 содержит ЧЕТЫРЕ Активности и имеет вид A-B-C-D. Жмем инфо чтобы убедиться.
Далее жмем кнопку ДОМОЙ и запускаем приложение АР0003
Запускаем Активность В
И далее жмем кнопку Start Act C AP0004 ClearTask
И так мы видим, что Активность С в задаче 61 была создана заново и сейчас в этой задаче всего одна Активность. Посмотрим логи.
Мы видим что все Активности в задаче 61 были уничтожены, то есть стек этой задачи был очищен полностью, а затем был создан новый экземпляр Активности С, которую мы и вызывали. То есть из стека задачи 61 были удалены ВСЕ Активности.
Теперь стек задачи 61 содержит ОДНУ Активность С.
На этом с этим флагом закончим.
Комментариев нет:
Отправить комментарий