Описание тега activity-stack
Приложение обычно содержит несколько действий. Каждое действие должно быть построено вокруг определенного действия, которое пользователь может выполнять и может запускать другие действия. Например, приложение электронной почты может иметь одно действие для отображения списка новых сообщений электронной почты. Когда пользователь выбирает электронное письмо, открывается новое действие для его просмотра.
Действие может даже запускать действия, существующие в других приложениях на устройстве. Например, если ваше приложение хочет отправить электронное письмо, вы можете определить намерение выполнить действие "отправить" и включить некоторые данные, такие как адрес электронной почты и сообщение. Затем открывается действие из другого приложения, которое заявляет, что оно обрабатывает такого рода намерения. В этом случае намерение состоит в том, чтобы отправить электронное письмо, поэтому запускается действие "составить" почтового приложения (если несколько действий поддерживают одно и то же намерение, тогда система позволяет пользователю выбрать, какое из них использовать). Когда электронное письмо отправлено, ваша деятельность возобновляется, и кажется, что действие электронной почты было частью вашего приложения. Несмотря на то, что действия могут быть из разных приложений, Android поддерживает этот удобный пользовательский интерфейс, сохраняя оба действия в одной задаче.
Задача - это набор действий, с которыми пользователи взаимодействуют при выполнении определенной работы. Действия расположены в стеке ("задний стек") в том порядке, в котором каждое действие открывается.
Главный экран устройства - это отправная точка для большинства задач. Когда пользователь касается значка в средстве запуска приложения (или ярлыка на главном экране), задача этого приложения выходит на передний план. Если для приложения не существует задачи (приложение не использовалось в последнее время), создается новая задача, и "основное" действие для этого приложения открывается как корневое действие в стеке.
Когда текущее действие запускает другое, новое действие помещается в верхнюю часть стека и получает фокус. Предыдущее действие остается в стеке, но останавливается. Когда действие останавливается, система сохраняет текущее состояние своего пользовательского интерфейса. Когда пользователь нажимает кнопку "Назад", текущее действие выталкивается из вершины стека (действие уничтожается), а предыдущее действие возобновляется (восстанавливается предыдущее состояние его пользовательского интерфейса). Действия в стеке никогда не переупорядочиваются, а только выталкиваются и извлекаются из стека - помещаются в стек при запуске текущим действием и удаляются, когда пользователь выходит из него с помощью кнопки "Назад". Таким образом, задний стек работает как объектная структура "последний пришел - первым ушел".
Ссылка: http://developer.android.com/guide/components/tasks-and-back-stack.html