Действия могут открыть другие действия. Каждое открытое действие помещается поверх открывателя. Этот стек называется BackStack в Android. Вы можете перейти к предыдущему действию, нажав кнопку «Назад» на устройстве.

Приложение обычно содержит несколько действий. Каждое действие должно быть разработано вокруг определенного вида действий, которые пользователь может выполнять и может запускать другие действия. Например, приложение электронной почты может иметь одно действие для отображения списка новых сообщений электронной почты. Когда пользователь выбирает электронное письмо, открывается новое действие для просмотра этого электронного письма.

Операция может даже запускать операции, которые существуют в других приложениях на устройстве. Например, если ваше приложение хочет отправить электронное письмо, вы можете определить намерение выполнить действие «отправить» и включить некоторые данные, такие как адрес электронной почты и сообщение. Затем открывается действие из другого приложения, которое объявляет себя для обработки такого рода намерений. В этом случае цель состоит в том, чтобы отправить электронное письмо, поэтому начинается действие «составить» почтового приложения (если несколько действий поддерживают одно и то же намерение, то система позволяет пользователю выбрать, какое из них использовать). Когда электронное письмо отправлено, ваша деятельность возобновляется, и кажется, что электронная почта была частью вашего приложения. Несмотря на то, что действия могут быть из разных приложений, Android поддерживает бесперебойную работу пользователей, сохраняя обе операции в одной задаче.

Задача - это набор действий, с которыми пользователи взаимодействуют при выполнении определенной работы. Действия упорядочены в стек («задний стек») в порядке, в котором открывается каждое действие.

Главный экран устройства является отправной точкой для большинства задач. Когда пользователь касается значка в панели запуска приложений (или ярлыка на главном экране), задача этого приложения выходит на первый план. Если для приложения не существует задачи (приложение не использовалось в последнее время), то создается новая задача, и «основное» действие для этого приложения открывается как корневое действие в стеке.

Когда текущая активность запускает другую, новая активность помещается в верхнюю часть стека и получает фокус. Предыдущее действие остается в стеке, но останавливается. Когда действие останавливается, система сохраняет текущее состояние своего пользовательского интерфейса. Когда пользователь нажимает кнопку «Назад», текущее действие извлекается из верхней части стека (действие уничтожается) и возобновляется предыдущее действие (восстанавливается предыдущее состояние его пользовательского интерфейса). Действия в стеке никогда не переставляются, только выталкиваются и извлекаются из стека - помещаются в стек, когда запускается текущим действием, и выталкиваются, когда пользователь покидает его с помощью кнопки Назад. Таким образом, задний стек работает как структура объекта «последний пришел, первый вышел».

Ссылка: http://developer.android.com/guide/components/tasks-and-back-stack.html