ConXion — стартап, основной целью которого является облегчение жизни путешественников и людей которые проводят большую часть жизни в дороге.
Идея сервиса заключается в поиске попутчиков для разделения расходов на такси из аэропорта.
Перед нашей командой стояла задача разработать мобильное приложение для Android, которое отвечало бы следующим требованиям:
- Быть интуитивно понятным
- Иметь привлекательный и яркий дизайн
- Приложением должно быть удобно пользоваться в условиях спешки, что характерно для аэропортов
![](https://storage.stfalcon.com/uploads/images/5cd56fab2983a.webp)
Регистрация и авторизация
Нашей командой была реализована очень простая форма регистрации включающая в себя только самое необходимое.
Поскольку одной из особенностей приложения является подбор попутчиков по языку, при регистрации мы предусмотрели несколько полей для выбора языков, на которых говорит пользователь.
![](https://storage.stfalcon.com/uploads/images/5cd56fc985145.webp)
Поиск попутчиков
После регистрации в приложении у пользователя есть возможность сразу же начать поиск попутчиков лишь указав точку назначения и количество людей едущих с ним.
Поиск ведется среди людей у которых установлено приложение и которые находятся в определенном радиусе, который устанавливается в настройках (по умолчанию — 2 км).
В результатах поиска можно увидеть всех близлежащих пользователей соответствующих параметрам. Также добавили возможность просмотра профиля конкретного пользователя, в котором отображаются фотографии, языки и национальность.
После выбора подходящего попутчика у пользователя есть возможность отправить ему запрос. Причем количество запросов неограниченно, тем самым у пользователя есть возможность начать диалог с несколькими людьми одновременно.
![](https://storage.stfalcon.com/uploads/images/5cd56fe78d684.webp)
Чат
Если попутчик отвечает положительно на запрос — инициируется диалог в котором пользователи могут обсудить все интересующие друг-друга вопросы и договориться о месте встречи, чтобы вместе найти такси до точки назначения.
Все чаты вынесены в отдельную вкладку в интерфейсе, на которой в случае получения новых сообщение отображается уведомление.
В случае если пользователя не устраивает попутчик — оставили возможность отклонить запрос.
![](https://storage.stfalcon.com/uploads/images/5cd5702d73fcb.webp)
Профиль пользователя
Помимо прочего нами был реализован достаточно гибкий функционал работы с профилем пользователя, что позволяет довольно быстро загружать новые фотографии и изменять другую информацию.
![](https://storage.stfalcon.com/uploads/images/5cd57070c4696.webp)
Техническая реализация
Работая над данным проектом, мы стремились максимально сократить бюджет разработки и при этом выполнить работу в кратчайший срок. Поэтому было решено использовать Firebase BaaS(Backend-as-a-service). В качестве базы данных использовалась Firebase Realtime DB. Данный подход отлично работает для небольших проектов, к тому же, он позволяет в кратчайшие сроки реализовать бэкенд не разрабатывая сложных API. Более того, Firebase Realtime DB позволил организовать обновления контента в реальном времени не используя Socket или Push Notifications, что положительно сказалось на стабильности приложения и стоимости разработки.
Так как мы стремимся идти в ногу со временем, само приложение для Андроид написано современным языком программирования Kotlin, а aрхитектура приложения отвечает принципам Clean Architecture, а также MVVM благодаря Android Architecture Components. Это обеспечивает гибкость в процессе разработки и экономит время если требуется изменить дизайн или бизнес логику приложения.
Для реализации UI части для чата между попутчиками была использована собственная Android библиотека ChatKit. Что в свою очередь тоже позволило значительно сэкономить средства клиента и время на разработку.
Анимация
Для экрана загрузки реализовали анимированную версию логотипа и внедрили ее в приложение при помощи библиотек Lottie.
![](https://storage.stfalcon.com/uploads/images/5cd583934ef7b.gif)
Над проектом работали:
- Светлана Болгар
Проектный менеджер
- Александр Кононенко
Дизайнер
- Андрей Ткач
Руководитель отдела QA
- Антон
Android разработчик