MeinFernbus — ведущий немецкий поставщик транспортных услуг в области перевозок автобусами дальнего следования. В 2015 году MeinFernbus объявили о слиянии с другой компанией и таким образом стал лидером пассажирских перевозок Германии, но под другим именем.
Наша команда занималась разработкой первой версии приложения для платформы Android. Далее разработкой занималась уже сама команда MeinFernbus, включая локальные платежные системы, последующие версии приложения и iOS версию. Но нам интересно рассказать о своем участии в данном проекте, мы благодарны MeinFernbus за предоставленную возможность и приобретенный опыт.
Задача
В ходе работ мы взяли на себя заботы о UI составляющей приложения, а также начали разработку первой версии приложения в тесном сотрудничестве с командой MeinFernbus, которая в дальнейшем продолжила разработку самостоятельно и довела приложение до первого релиза в маркет.
Изначальной задачей приложения была реализация еще одного канала продаж в дополнение к веб-версии. И эта задача была элегантно реализована, не добавляя ничего лишнего, удовлетворяя все требования пользователей, что помогло извлечь максимальную пользу от сервиса.
Читать кейс о разработке программной части и дизайне сайта продаж для MeinFernbus
Например, в приложении нет регистрации как таковой, так как человеку, который хочет купить билет на автобус, она попросту не нужна.
Разработка
Во время работы, API еще находился на стадии активной разработки, было решено начать с разработки приложения под одну платформу, а именно Android. Одной из задач команды было тесное сотрудничество с разработчиками веб-части, чтобы спроектировать и реализовать удобный, безопасный и надежный API, который впоследствии будет использовать и iOS-приложение. Таким образом, отложив разработку второй платформы, удалось оптимизировать затраты на iOS версию.
Это только несколько примеров. Такой подход позволил сэкономить средства и при этом сфокусироваться на главном, реализовав качественный продукт. Более того, наша команда дизайнеров сделала значительный вклад в разработку UI и дизайн приложений MeinFernbus как для Android, так и для iOS платформы. На скриншотах представлен разработанный нами дизайн для последующей версии iOS и Android приложения, который далее использовала в своей деятельности команда клиента.
А что же под капотом?
Когда разработка приложения только была начата, был выпущен Xamarin 2.0, и шум вокруг кроссплатформенной разработки стоял достаточно большой, было решено писать нативные приложения. На самом деле о кросс-платформе все знали, но никто о ней даже и не вспоминал, так как команда понимала — лучшего User Experience можно было добиться только с помощью native технологий, а все остальное — кустарная сборка.
Итак, основной инструментарий первой версии приложения — Android SDK, Java и Android Studio, команда также не обходила стороной всевозможные библиотеки и готовые решения, позволяющие ускорить разработку. Интерфейс был сверстан с целью масштабирования на планшетах, без перекомпоновки экранов приложения. В основу приложения заложен архитектурный паттерн MVP. За все асинхронные задачи отвечала библиотека RoboSpice. Для того чтобы пользователь мог мгновенно заполнить форму поиска билетов, в приложении была реализована SQLite база. Вся подгрузка названий городов и станций в выпадающие списки и поля поиска осуществлялась с нее, это давало ощущение плавности и невероятной скорости работы приложения для пользователей.
Благодаря использованию вышеупомянутого стека технологий у нас получилось приложение, нацеленное на максимальное использование фишек Android. Например, в списке городов и посадочных станций можно было найти станцию с информацией о ней, Google картой, точкой и кнопкой, позволяющей открыть навигатор привычный пользователю, а в нем уже проложить маршрут к данной станции. Клик по полю с мобильным номером открывает стандартный диалер. А если вам не удалось найти билет, так как все занято — приложение предложит другие даты, на которые есть билеты по заданному направлению либо позже сообщит в уведомлении о появлении билетов по вашему запросу. Что касается оплаты, в приложении было реализовано несколько локальных систем привычных для жителей Германии, а также добавлен PayPal SDK.
К моменту старта разработки был анонсирован и выпущен Android 4.4.4 KitKat, который, в свою очередь, был впервые представлен на борту Nexus 5. Соответственно перед командой стояла задача поддерживать устройства с установленной версией операционной системы Android 2.2–4.4.4. Также, остро стояла проблема фрагментации устройств, так как Android Support Library только набирала обороты, а Design Support Library даже еще не была в мыслях у Google. С данными задачами ребята справились. Благодаря тестированию на большом парке устройств и эмуляторов удалось достичь поставленных целей.
Результат
В итоге получили простое, но интерактивное приложение с 3 главными разделами (Станции, Бронирование, Информация), где пользователю не нужно регистрироваться. Мы рассказали о первой версии приложения Android, разработаной нашей командой. Актуальную версию приложений, которой занималась уже команда нашего клиента, можно найти в маркетплейсе.
Команда проекта:
- Олег У.
Дизайнер
- Андрей Новиков
Android разработчик
- Александр
Android разработчик
Другие наши проекты
Вебсайт для MeinFernbus
Разработка программной части и дизайн сайта для крупнейшей автобусной компании, Германия
Приложения Busfor
Разработка мобильных приложений для онлайн-продажи автобусных билетов
Мобильное приложение Triplook
Приложение для сферы туризма и знакомств