Главная » Разработка для Android » ПЛАВНАЯ И ИНТУИТИВНАЯ РАБОТА ПОЛЬЗОВАТЕЛЯ С НЕСКОЛЬКИМИ АКТИВНОСТЯМИ

0

 

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

Многозадачность при работе с небольшим экраном

При отслеживании нескольких задач – программ, документов и т. д. – в пользовательском интерфейсе любой программы для персонального компьютера есть одна настолько распространенная концепция, что о механизме его реализации никто даже не задумывается. Множество документов, накладывающиеся друг на друга окна и указатель мыши – все это компоненты одной парадигмы пользовательского интерфейса, которая называется метафорой рабочего стола (desktop metaphor). Экран персонального компьютера – это метафора настоящего рабочего стола, на котором лежат документы. Если расположить один документ выше всех остальных, щелкнув на нем кнопкой мыши, то именно с этим документом вы сможете работать в настоящий момент.

Если экран небольшой, то весь он выделяется под одну задачу, а концепция задачи и переключения задач гораздо менее наглядна, чем метафора рабочего стола. В мобильных пользовательских интерфейсах центральное место зачастую занимает стек переходов назад, то есть стек активностей, к которым вы можете вернуться. В Android наряду с выражением «стек переходов назад» также употребляется термин «стек активностей» (activity stack).

Задачи и приложения

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

Запуская конкретное приложение, пользователь одновременно запускает и так называемую корневую активность задачи. Эта ситуация становится ясна пользователю благодаря предусмотренным в Android методам переключения задач. Пользователь может вернуться к уже запущенному приложению (если оно было свернуто), нажав его значок в главном меню или во всплывающем диалоге Recent Tasks (Недавние задачи), который вызывается при удержании кнопки Ноте (Домой).

Задачи – это не процессы. Процессы, относящиеся к той актуальной активности конкретной задачи, уже могут быть завершены, но, когда пользователь перейдет обратно к работе с этой задачей, она будет перезапущена, объект Actіvіty – инстанцирован заново, а состояние активности – восстановлено. Пользователь совершенно не обязан знать, как именно происходит управление памятью. Система Android будет восстанавливать процессы и активности в задаче по мере того, как они могут понадобиться пользователю.

Android предоставляет разработчику широкий контроль над поведением задач. При правильном применении такой контроль позволит вам даже усилить присутствующую в Android концепцию задач и заставить пользователя поверить, что кнопка «Назад» всегда работает именно так, как этого хочет пользователь. При неправильном использовании этих возможностей и за неимением хорошего вкуса у разработчика пользователь рискует вновь и вновь задаваться вопросом: «А как я сюда попал?»

Источник: Android. Программирование на Java для нового поколения мобильных устройств

По теме:

  • Комментарии