Разработка мобильных приложений
Разрабатываем мобильные приложения на .NET MAUI: один код работает на Android и iOS, поддержка обходится дешевле двух отдельных команд. Отдельное направление — перевод приложений с устаревшего Xamarin.Forms, поддержка которого прекращена. Такую миграцию мы уже выполняли.
Коротко о задаче
Мобильное приложение оправдано не всегда, и честный ответ полезнее продажи. Если человек заходит раз в квартал, ему хватит адаптивного сайта: приложение придётся ставить, а место на телефоне ограничено. Приложение выигрывает, когда им пользуются регулярно и когда нужны возможности устройства — камера, геолокация, сканирование, push-уведомления, работа без сети.
Дальше встаёт вопрос стоимости. Две нативные команды под Android и iOS означают двойную разработку, двойные доработки и двойную поддержку. Для внутреннего приложения на пятьдесят сотрудников такой бюджет не окупается.
Кроссплатформенная разработка решает это, но у неё есть своя ловушка. Технологии в этой области меняются, и приложение, написанное несколько лет назад, может оказаться на фреймворке, который больше не поддерживают. Так произошло с Xamarin.Forms: поддержка прекращена, магазины повышают требования к версиям систем, и приложение перестаёт собираться и обновляться.
Мы работаем на .NET MAUI, преемнике Xamarin, и умеем переводить на него существующие приложения.
Что входит в услугу
- Проектирование
Определяем платформы, минимальные версии систем, сценарии использования и возможности устройства, которые действительно нужны. Отдельно решаем, что приложение делает без сети.
- Дизайн интерфейса
Готовим макеты с учётом различий платформ: элементы управления, навигация и жесты на Android и iOS ведут себя по-разному, и приложение должно ощущаться привычным на обеих.
- Разработка
Пишем приложение и серверную часть к нему. Реализуем авторизацию, синхронизацию, работу с камерой и геолокацией, локальное хранилище, push-уведомления.
- Интеграция с бэкендом
Приложение подключается к вашей платформе или к API, который мы разрабатываем: {{ссылка: Интеграция систем и разработка API}}. Данные едины для мобильного, веба и внутренних систем.
- Публикация
Готовим сборки, оформляем карточки, проходим модерацию в магазинах приложений. Для внутренних приложений настраиваем корпоративное распространение без публикации.
- Миграция с Xamarin.Forms
Отдельная услуга. Переносим существующее приложение на .NET MAUI, сохраняя логику и данные: разбираем текущий код, находим устаревшие компоненты и заменяем их поддерживаемыми аналогами, обновляем зависимости, тестируем на реальных устройствах.
- Сопровождение
Обновления под новые версии Android и iOS, доработки, поддержка публикации.
Что это даёт заказчику
- Одна команда вместо двух. Общий код на обе платформы сокращает и разработку, и каждую последующую доработку.
- Общий стек с серверной частью. Мы пишем и мобильное приложение, и бэкенд на .NET, поэтому модели и логика переиспользуются.
- Выход из тупика с Xamarin. Приложение на прекращённом фреймворке возвращается в поддерживаемое состояние без переписывания с нуля.
- Честная оценка необходимости. Если задача закрывается адаптивным сайтом, мы скажем об этом.
- Работа без сети. Локальное хранение и синхронизация проектируются заранее, а не добавляются потом.
Как мы работаем
Стек — .NET MAUI для клиента, ASP.NET Core и PostgreSQL для серверной части.
Для нового приложения начинаем со сценариев и макетов, дальше выпускаем работающие сборки регулярно, чтобы заказчик держал продукт в руках задолго до релиза.
Для миграции порядок другой: сначала аудит текущего приложения с оценкой объёма работ, затем перенос по частям с проверкой на устройствах после каждого этапа. Смотрите также {{ссылка: Аудит унаследованного кода и оценка технического долга}}.
Наш опыт
Мы выполнили перевод мобильного приложения с Xamarin.Forms на .NET MAUI: приложение вернулось в поддерживаемое состояние, продолжило собираться под актуальные версии систем и стало пригодным для дальнейшего развития.
Серверную часть для мобильных клиентов мы делаем на том же стеке, что и наши веб-платформы, и используем те же внутренние библиотеки. Смотрите {{ссылка: Разработка веб-сервисов и платформ}}.
Расскажите, что за приложение нужно или что происходит с существующим. Для миграции начнём с аудита, для нового приложения — со сценариев.
Давайте создавать вместе!
Свяжитесь с нами и мы проконсультируем по вопросам реализации IT-решений и найдем лучший подход к разработке
Контакты
Офис: г. Казань, ул. Островского, 57Б, оф. 110
Почта: info@nabla-lab.ru
Телефон: +7 (965) 595-62-78