Пишете крутые статьи? Публикуйте их в Workspace Media, бесплатно!
Mobilife
RHR – мобильное приложение для любителей трейлраннинга
Mobilife
WDA
2025
#Приложение под ключ

RHR – мобильное приложение для любителей трейлраннинга

938 
14 фев 2025 в 13:43
Mobilife
Mobilife Россия, Белгород
Поделиться:
RHR – мобильное приложение для любителей трейлраннинга
Клиент

ООО «Голден Ринг Ультра Трейл»

Сфера

Спорт

Регион

Россия, Москва

Мобильная платформа

IOS, Android

Сдано

Декабрь 2024

Задача

Running Heroes Russia - команда профессионалов, которая организовывает самые массовые и уникальные забеги по пересеченной местности в России.

Масштабный ежегодный трейловый старт в Суздале, ночные рок-н-ролльные ультрамарафоны, уникальный забег на острове за полярным кругом, сложнейшие зимние гонки на 160 километров - это только малая часть того, что делает команда Running Heroes Russia.

Клиент хотел сделать мобильное приложение для участников своих стартов и их болельщиков.

Основные задачи - разработать решение по принципу "информация в кармане", которое позволит решать следующие задачи:

• Следить за новостями и получать актуальную информацию о проводимых мероприятиях.

• Просматривать и скачивать треки дистанций.

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

• Просматривать персональные результаты и фотографии с мероприятия.

Решение

Для реализации требуемого функционала мы предложили клиенту отойти от стандартного подхода и вместо двух нативных мобильных приложений для iOS и Android разработать кросс-платформенное решение на основе Kotlin Multiplatform (KMP), а в качестве back-end составляющей использовать сервисы Firebase.

Такой подход позволил добиться следующего:

• Сократить затраты на разработку приложений. 

Большая часть кода пишется на языке Kotlin, который знаком всем Android-разработчикам. 

• Реализовать UX, практически неотличимый от нативного для iOS и Android.

Kotlin Multiplatform позволяет реализовывать очень производительные приложения, которые сложно отличить от нативных по визуалу и быстродействию.

• С легкостью выдерживать пиковые нагрузки в момент проведения мероприятий.

Использование облачных сервисов Firebase позволяет не беспокоиться о нагрузках в дни проведения мероприятий и при этом существенно экономить на стоимости эксплуатации back-end составляющей в остальное время.

1Аналитика и дизайн

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

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

Проделали стандартные этапы с первоначальным прототипированием интерфейса и последующей отрисовкой дизайнов. Остановились на следующем наборе функционала:

• Новостной раздел с текстовым и медиа-контентом.

• Основной раздел с предстоящими и прошедшими мероприятиями, а также детальной информацией по каждому из них: дата и место проведения, программа мероприятия, фото и видео, информация о дистанциях (отображение трека на карте и возможность скачать/отправить gpx-трек на спортивные часы), различная полезная информация для участников и т.д.

• Отслеживание и получение уведомлений в режиме реального времени о прохождении участниками контрольных точек во время проведения забега. Такая функция очень полезна для болельщиков.

• Отображение личных результатов и фотографий с дистанции по итогам проведения мероприятия.

• Заложили возможность добавления полноценного личного кабинета участника в будущем.

2Разработка

После обсуждения возможных вариантов технической реализации, решили остановиться на использовании Kotlin Multiplatform (KMP) и разработать с помощью него кросс-платформенное приложение для iOS и Android.

Такой выбор был обусловлен следующим: 

• Небольшой объем и сложность приложения, а также отсутствие комплексных анимаций и функционала, в которых кросс-платформа могла бы стать узким местом.

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

• Хороший уровень быстродействия Kotlin Multiplatform и его активное развитие.

Выбранное решение хорошо показало себя и полностью оправдало наши ожидания. Хотя мы и столкнулись с рядом сложностей, связанных с относительной молодостью фреймворка KMP. Например, по умолчанию для iOS нет поддержки жеста "назад" для навигации между экранами приложения. Такую возможность пришлось добавлять вручную. 

Также пришлось решать стандартные задачи для любой кросс-платформенной разработки. Например, реализовывать платформенные решения для отображения Яндекс.Карт.

В качестве back-end мы решили использовать облачные сервисы Firebase: Firestore, Cloud Functions, Hosting, Messaging и некоторые другие. 

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

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

3Запуск

Выпустили приложение как раз к началу мероприятия нашего клиента - сложнейшего зимнего ультрамарафона.

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

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

Результат

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

• Просмотр персональных результатов и фотографий; 

• Отслеживание атлетов на дистанции в режиме реального времени в дни проведения соревнований;

Сейчас активно прорабатываем новые идеи и функционал вместе с клиентом. Планов по развитию продукта очень много. Уверенно движемся вперед и стараемся сделать лучшее в России приложение для трейлраннеров.

Отзыв клиента

Иван Алырчиков
Иван Алырчиков

Руководитель IT-департамента

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

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

https://apps.apple.com/ru/app/rhr/id6739843392

Стек технологий

  • Kotlin Kotlin Язык программирования
  • Swift Swift Язык программирования
  • Firebase Firebase База данных
  • Intellij IDEA Intellij IDEA Среда разработки
  • Xcode Xcode Среда разработки

Выскажите мнение
Авторизуйтесь, чтобы добавить свой комментарий.
оставить заявку

Хотите заказать похожий проект?

Mobilife с удовольствием обсудит вашу задачу

Оставить заявку