Site icon AppTractor

«Этот маленький остров меняет все» — опыт проектирования Live Activity в Lyft

Переломный момент для системы поездок

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

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

До появления Live Activities push-уведомления были единственным способом доставки критически важных обновлений водителям, но при использовании в Lyft уведомления были далеко не идеальны. Канал push-уведомлений является:

Проблема заключалась не столько в уведомлениях, сколько в том, что конкретные, критически важные обновления заслуживают другого канала доставки: такого, который был бы заметным, постоянным и всегда актуальным. С помощью Live Activities компания Apple обеспечила именно это, создав высокодинамичное и настраиваемое пространство, которое облегчает доступ к этим обновлениям, облегчает их понимание и соответствующие действия.

Мы ожидаем, что Live Activities станет хорошим дополнением для многих приложений iOS, но для таких специфических случаев использования, как поездки на автомобиле, где своевременные обновления могут сформировать или сломать прекрасный опыт, это будет настоящим изменением правил игры.

Для нас Live Activities — это не просто новый виджет, мы рассматриваем его как совершенно новый способ получить удовольствие от поездки с Lyft на iOS.

Море вариантов

Самым уникальным и мощным свойством Live Activities является их способность принимать различные формы в различных контекстах. Каждая Live Activity имеет четыре варианта представления в зависимости от того, где она появляется:

Такая гибкость хороша тем, что она позволяет Live Activity и критически важной информации, содержащейся в ней, проникать сквозь всю iOS, но она также требует от дизайнеров разработки четырех различных версий каждого состояния Live Activity 😅. Это может не быть проблемой, если у вашей Live Activity одно состояние, как у табло в спортивной игре, но у нашей есть 26 различных возможных состояний…

Охват 26 различных состояний поездки, каждое из которых имеет 4 различных представления, означает разработку 104 уникальных Живых активностей.

56 из 104 проектов живых активностей.

Разработка 104 вариантов чего бы то ни было — дело непростое, но изменчивость презентации представляет собой уникальную задачу. Поскольку Live Activities могут плавно переключаться между форматами во время поездки (например, переходить с экрана блокировки на динамический остров, когда пользователь разблокирует свой телефон), существует практически бесконечное количество путей, которые пользователь может пройти через эту сетку дизайнов.

Наш предварительный прототип

Просмотр всей сетки дизайнов был в определенной степени полезен, но нам нужен был лучший способ смоделировать все возможные пути пользователя, чтобы понять, будут ли они восприниматься как единое целое.

Чтобы облегчить эту имитацию, я создал в Figma уникальный прототип с дистанционным управлением, который позволяет рецензенту перемещаться по вертикали и горизонтали по всем 126 дизайнам в сетке.

(Примечание: пустое пространство в верхней части позволяет устройствам без динамического острова имитировать его)

Хотя этот тип прототипа может показаться чрезмерным, он сыграл важную роль в оттачивании нашего окончательного дизайна и ускорил процесс рассмотрения с нашей командой руководителей.

Максимальное использование минимума

 

Когда мы учим студентов разрабатывать дизайн веб-сайта, мы говорим им, что сначала всегда нужно разрабатывать мобильную версию. На это есть много причин, но важной из них является то, что маленький экран заставляет вас принимать сложные решения о том, какой информации отдать приоритет в сжатом пространстве. Проектирование Live Activities — это высшее упражнение в расстановке приоритетов путем принятия решений, причем минимальное состояние представляет собой самую уникальную задачу:

Как предоставить клиентам необходимую информацию, если у вас окружность в 36px?

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

В результате критики возникли две школы мышления для работы с минимальным состоянием:

В конечном итоге мы решили сбалансировать эти две школы мышления, рассмотрев каждый этап поездки в отдельности и спросив себя: «Можем ли мы использовать это крошечное пространство для эффективного общения?«.

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

Сравнение «простого» и «сбалансированного» подходов на этапах ожидания и прибытия водителя.

Визуализация прогресса

Для Lyft карта является важной частью опыта использования приложения, но мы быстро обнаружили, что она не поддерживается в Live Activities. Это техническое ограничение создало интересную дизайнерскую задачу:

Как мы можем сориентировать пассажиров и визуализировать ход поездки без использования карты?

Первые попытки визуализации прогресса.

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

Механика продвижения

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

Когда пассажир получает водителя, он получает первоначальное расчетное время прибытия, которое сообщает ему, сколько времени осталось до прибытия машины. Быстрое понимание этого времени (ETA) очень важно для пассажиров, но это становится еще сложнее, если каждый раз при подборе водителя начинать индикатор прогресса с 0%. Такое постоянство начального положения не дает пассажиру визуального представления о том, насколько далеко находится водитель — «1 мин. до прибытия» и «21 мин. до прибытия» выглядят одинаково, а также заставляет автомобиль двигаться со значительно разной скоростью в зависимости от начального ETA (см. ниже).

Чтобы решить эту проблему, мы разделили индикатор выполнения на 10 шагов и разместили автомобиль динамически в зависимости от начального времени прибытия: 10 минут — 10 шагов, 3 минуты — 3 шага и т. д. Таким образом, автомобиль движется с постоянной, предсказуемой скоростью и дает пассажирам целостное ощущение того, насколько далеко находится их водитель: если автомобиль далеко, у вас есть время; если автомобиль близко, будьте готовы в ближайшее время.

Окончательная механика прогресса от начальной позиции до 5 минут после матча.

Но в нашем приложении карта-линия маршрута делает больше, чем просто визуализация прогресса поездки. Она также отображает:

Мы увидели возможность использовать привычную визуализацию карты и привнести эту дополнительную функциональность в Live Activities.

Это позволило поднять визуализацию выше простого индикатора прогресса и лучше связать опыт Live Activity с опытом работы в приложении, который мы совершенствовали на протяжении десяти лет.

Уроки проектирования Live Activity

Заключительные мысли

Live Activities подходят не для каждого приложения iOS, но для некоторых они меняют правила игры, и rideshare — определенно одно из них. Мы хотим выразить благодарность команде Apple за создание Live Activities, а также за то, что они решили расширить возможности дизайнеров, сделав их очень настраиваемыми.

Мы в Lyft очень рады тому, что Live Activities внедряется сегодня, и с нетерпением ждем будущих улучшений.

Источник

Exit mobile version