YoRo (сокращение от Your Route — Твой Маршрут) — приложение для спортивного ориентирования с использованием технологии GPS, разработанное в рамках проекта «Память о героях, через призму ориентирования», победившего в конкурсе среди некоммерческих организаций по разработке и выполнению общественно полезных проектов на территории города Омска в 2020 году в номинации «Омск активный».
В процессе реализации проекта в омском Парке Победы была поставлена статическая дистанция: на местности были вкопаны и раскрашены в яркие цвета бетонные столбики, выполняющие роль контрольных пунктов.
Необходимо было придумать надежный способ отметки на таких пунктах, который работал бы даже в том случае, если столбики окажутся испорчены. Было принято решение использовать технологию GPS. Таким образом мы не привязываемся к наличию данных столбиков на местности. Мы знаем координаты, где должен находиться столбик, знаем координаты участника в данный момент времени и, исходя из этих данных, можем убедиться, что участник действительно находится в непосредственной близости от контрольного пункта.
Помимо сохранения времени прохождения участником контрольного пункта, необходимо предлагать участнику ответить на вопрос, связанный с историей города Омска и его героями. В случае неправильного ответа, участнику должно быть добавлено штрафное время к итоговому результату.
Весь описанный функционал удобнее всего было реализовать внутри мобильного приложения. Для разработки было решено использовать фреймворк Flutter от Google, который позволяет запускать приложения и на платформе Android, и на iOS.
Функционал разработанного приложения на текущий момент включает в себя:
- просмотр информации о доступных дистанциях;
- просмотр карт дистанций, масштабирование и поворот во время прохождения дистанции;
- отметка на контрольных пунктах, если пользователь находится рядом с ними, сохранение времени отметки;
- демонстрация вопроса викторины после отметки, возможность выбора одного из вариантов ответа, сохранение ответа участника;
- просмотр и анализ результата участника после финиша, сохранение его на устройстве.
На главном экране пользователь видит список доступных дистанций, краткую информацию о каждой из них, расстояние до места старта.
При нажатии на карточку дистанции открывается страница с подробной информацией о ней. Во вкладке «Информация» расположен список групп, параметры каждой из них.
Во вкладке «Результаты» расположены сгруппированные результаты прохождения участником данной дистанции.
После выбора группы и нажатия на кнопку «Перейти к старту», открывается окно прохождения дистанции, на котором находятся две вкладки: «Отметка» и «Карта». В процессе прохождения дистанции участник может переключаться между ними.
На первой вкладке расположены секундомер, информация о расстоянии до следующего пункта, список отсечек времени на предыдущих пунктах и кнопка отметки, которая активируется в момент приближения к контрольному пункту.
На второй вкладке участник может смотреть карту дистанции.
- Публикация приложения в AppStore
- Разработка веб-сервера для реализации возможности просмотра результатов других участников
- Добавление возможности создавать свои дистанции