2ГИС ближе к близким: друзья на карте
Мы стали показывать друзей на карте 2ГИС — добавили возможность делиться геопозицией и всегда оставаться на связи с близкими. В посте — история появления в 2ГИС нового сервиса, о котором команда мечтала несколько лет.
Идея
Город — это не парки, дома и дороги, это люди. Мы всегда видели свою миссию в том, чтобы «соединять» жителей городов с лучшими местами в городе и решать ежедневные рутинные задач через точные данные и качественные продукты. И нам всегда хотелось сделать для пользователей чуть больше.
Ещё в 2018 году на продуктовом воркшопе, где обычно прорабатываются разные идеи, появился первый концепт возможности показывать рекомендации друзей в справочнике, события и встречи, да и самих близких на карте.
Тогда воркшопы проходили на Алтае, куда мы добирались на машинах из Новосибирска. Каждый выезд начинался в чате с шаринга геопозиции в Телеграме.
С одной стороны, классно прямо в чате поделиться своим местоположением и видеть остальные экипажи, но с другой — грустно переключаться с навигатора 2ГИС, где отмечен каждый дом, камера и кафе, в Телеграм с пустой картой.
Мечта о Zenly в 2ГИС
Годы шли, мечта теплилась где-то в сердцах, но всерьёз за новую тему мы не брались. Смотрели на шаринг позиции в Google maps или Find me в iOS и хотели сделать лучше: точнее показывать позицию и гуманно расходовать заряд батареи. Но реализация казалась дорогой и технически сложной.
Всё начало меняться, когда в продуктовый канал в Slack кто-то закинул инвайт в Zenly — соцсеть для обмена местоположением.
Мы как продакты начали пользоваться приложением из профессионального интереса: изучали классные фишки и механику. Zenly был по-настоящему вдохновляющим примером — классные анимации, миллион пасхалок и интересных решений, которыми хотелось делиться. Чатики были наполнены скринами.
Мы быстро втянулись и нашли огромное количество бытовых сценариев, когда Zenly стал полезным. По утрам следили за перемещениями друг друга из дома в офис, чтобы пойти вместе на завтрак. Пользовались в совместных путешествиях и командировках. Несколько раз спонтанно встречались в барах, потому что просто оказались рядом друг с другом. Те, у кого есть дети, пользовались всей семьёй, чтобы не испытывать тревогу и не мучить ребёнка вопросом «ты доехал?».
Но всё ещё не хватало связи с навигацией и совместными поездками. Конечно, можно было делиться геопозицией в Google Maps, но по-хорошему безумный Zenly вызывал больше эмоций и желания им пользоваться.
Пик популярности Zenly пришёлся на 2021 год, когда он взлетел в топ-3 российских магазинов приложений и добрался до отметки в 12 млн пользователей ежемесячно. На его примере мы наконец поверили, что история про шаринг геопозиции может быть частым или даже ежедневным сценарием.
Закрытие Zenly в конце 2022 года послужило началом истории Друзей в 2ГИС. Одна из причин закрытия — прекрасная команда с замечательным продуктом не смогла найти модель монетизации. В мире вообще мало кто умеет монетизировать карты, но у нас такой навык есть. Кроме того, пользователи стали чаще писать о возможности шаринга геопозиции. Мы решили исследовать-таки эту тему подробнее.
Исследование
Начали с исследований: поговорили с пользователями самых популярных приложений, которые позволяют делиться геопозицией. Мы хотели понять сложившиеся сценарии использования, кто и какие задачи решает с их помощью.
Проверяли основную гипотезу, что массово ежедневно Zenly и подобными сервисами пользовались в основном школьники и студенты, а также те, кто закрывает понятный семейный сценарий — присмотр за детьми.
Результаты удивили: многие взрослые, которых вовлекли в приложение дети, начали делиться местоположением уже со своими друзьями.
Второй интересный факт — половина респондентов (≈1000 человек) не пользуется никакими специальными приложениями, но не против делиться с близкими своим местоположением. Причины указывали разные: кто-то не знал об их существовании, кто-то не смог подобрать подходящее после ухода Zenly, несмотря на обилие клонов, которые полностью скопировали его механику и дизайн.
Мы получили достаточно тёплый отклик на свою идею и важные для пользователей аспекты:
Удобно всё иметь в одном приложении
Будет очень удобно, потому что чаще всего маршруты планирую по картам. Потом перехожу в телеграм, и потом смотрю по точкам, как мы друг другу движемся. И как я говорила, мне это всё было бы удобно делать в одном приложении. То есть если бы всё общение осталось в телеграме, а всё, что касается геолокации — на картах, для меня это было бы удобно. Какие-то функции я смогла бы решать в одном месте.
Важен геотрекинг в фоновом режиме
Если бы в геосервисах такие функции были, важно, чтобы отслеживание геолокации работало постоянно, не только при включённом приложении — важно для детей, пожилых родственников.
Построение маршрутов до друзей и знакомых
В Москве каждый день пользуешься картами, и прикольно будет как в Zenly — поставить функцию «делиться геопозицией» и получать. И ты заходишь в карты, можешь построить маршрут и посмотреть, где твои друзья.
Обмен стикерами или краткими сообщениями
Или, например, я стою и мне холодно — прикольно отправить замерзающий смайлик, чтобы человек ехал быстрее.
Прототип
После исследований потребностей и особенностей аудитории, изучения других сервисов, отзывов на них и примерку того, как мы видим друзей в 2ГИС, мы сформулировали для себя главные принципы:
- Возможность видеть друга на карте — только по взаимному согласию. Если я хочу смотреть, где находится мой друг, справедливо в ответ показывать и своё местоположение.
- Мы должны показывать местоположение очень точно, в реальном времени и главное — не обязательно при запущенном 2ГИС.
- Эмоции обязательны! Должно быть тёплое ощущение от сценария, чтобы хотелось вернуться.
- Взаимодействие нужно. Мы сразу решили, что не будем повторять сценарии мессенджеров, но должна быть минимальная возможность взаимодействия с друзьями, без которой нет завершённости сценария и ощущения близости с ними на карте.
- Приватность. Нужны настройки управления своей видимостью, чтобы в экстренных случаях не показывать, где ты находишься.
- Бережное отношение к заряду аккумулятора. Пожалуй, одна из самых инженерно сложных задач, с которой столкнулись все команды разработки, уделявших ей внимание.
Исходя из главных принципов, определили стартовый состав первого релиза:
- Добавление друзей любым удобным способом
- Отображение их на карте в реальном времени
- Минимальные базовые настройки
Звучит так, будто можно сделать очень быстро…
Работать начали параллельно в двух направлениях:
- делали прототип, который трекает геопозицию пользователя и транслирует её друзьям;
- проектировали пользовательские сценарии в продукте с акцентом на плавность, заметность и аккуратность отображения друзей.
Прототип шаринга геопозиции собрали за два месяца — отдельное лёгкое приложение на базе нашего SDK с простым бэкендом. Немного неказистое, но функцию свою выполняло исправно — мы начали пользоваться геотрекингом внутри команды и получили достаточно точные данные о геопозиции в фоне с допустимыми тратами заряда аккумулятора телефона.
Наработки из прототипа интегрировали в 2ГИС и нарисовали первые сложные анимированные маркеры друзей. С первым движущимся, да ещё и развевающимся «огненным» следом маркера, карта буквально ожила. Честно — непередаваемые ощущения.
Проблемы при интеграции
В одной из прошлых статей мы подробно описали о сложностях интеграции простого функционала в большой продукт. Не обошлось без них и на этом проекте.
Первые же тесты энергопотребления на iPhone X с яркостью в 100% показали ужасные результаты.
Две основные проблемы:
- У нас большое сложное приложение, в котором одновременно развивается много сервисов. Его работа в фоне гораздо более затратна по ресурсам телефона, чем лёгкое отдельное приложение одной задачи.
Мы сильно перестарались с количеством получаемых точек. Да, качество и точность при этом были на уровне NASA, но обратная сторона — огромный расход батареи.
Оптимизация заняла около месяца. Мы переработали алгоритм ведения:
— будим устройства только когда это действительно нужно пользователям;
— лучше определяем начало движения и переход в состояние покоя, чтобы лишний раз не передавать координаты.
В итоге удалось найти состояние, близкое к золотой середине. Сейчас мы получаем лишь 25% от тех точек, что получали на старте, но расходуем аккумулятор в четыре раза меньше. При этом сервис остался таким же живым и точным. - Наша карта была не готова к встраиванию картинок в маркеры. И тем более к разнообразию анимаций — раньше они присутствовали минимально.
При любом изменении на экране карта перерисовывалась заново — анимации маркеров друзей приводили к бесконечной перерисовке всей карты.
Мы чуть ли не на половину переписали наш движок, но результаты стоили этих усилий. На синтетических тестах исправления дали до 30% улучшений. Сейчас энергопотребление при анимации примерно такое же, как при анимации гифки или стикера в популярных мессенджерах.
Естественно, энергопотребление улучшится у всех пользователей, а не только тех, кто включил Друзей, а исправления на этом не заканчиваются.
Внутренний релиз и тонкая настройка приватности
Первой более-менее стабильной версией мы поделились с сотрудниками и их близкими. Всего в закрытом релизе участвовали 600 человек, от которых мы получили огромное количество ценного фидбэка. Были и эмоции, какой-то детский восторг, и пожелания и сообщения о проблемах.
Геотрекинговые приложения или Zenly приходилось запускать специально, чтобы посмотреть, кто где. С 2ГИС всё по-другому. Еду утром на работу, случайно замечаю, что рядом коллега идёт от метро — «машу» ему через приложение и испытываю искреннюю тёплую эмоцию. Или приезжашь в Алматы, запускаешь 2ГИС для заказа такси и видишь, что откуда-то в городе оказалось несколько друзей — как же неожиданно и сулит хороший вечер.
Друзья добавляют новую информацию и делают карту ещё комплекснее. И одновременно делают всё приложение живее и интереснее. Видеть близких людей в ежедневных сценариях навигации (а многие наши пользователи запускают 2ГИС несколько раз в день) — бесценно. И теперь для этого не надо переходить в отдельные приложения.
Больше всего пользователи переживали из-за постоянного трекинга. Многие хотели на время скрыть своё местоположение, при этом не удаляя из друзей человека, с которым не хочешь делиться местоположением.
Из-за этого некоторые закрывали приложению доступ к данным GPS (на всякий случай) и даже старались лишний раз его не запускать. И, как следствие, реже использовали навигатор 2ГИС.
Для таких пользователей мы добавили тонкую настройку, кому показывать своё местоположение, а от кого спрятаться. В первый релиз эти настройки не вошли, но станут доступны всем нашим пользователям уже в следующем релизе.
Друзья в 2ГИС
Ощущения от живой карты — прекрасны, это восторг и совершенно другое восприятие. Каждый должен попробовать и прочувствовать это на себе! Мы хотим и будем наполнять продукт эмоциями и делиться ими со своими пользователями. Встречайтесь с близкими чаще, будьте ближе друг к другу.
Обновите приложение, переходите с телефона по ссылке-приглашению и создавайте свой ближний круг 💚
Здорово! Когда страна во весь материк - конечно нужно на карте всех видеть! Расстояния в России огромные. Очень красиво получилось, развивайте, успехов!
Однако локацию лучше по городу. Трекинг сажает аккумулятор сразу и не часто люди перемещаться. Хотя бы видеть кто где ) У нас страна от Балтийского моря до Тихого океана! )