БлогМобильные приложения · Flutter · Google Play
Разработка мобильных приложений: от идеи до Google Play и App Store
Также на: Azərbaycanca English
Разработка мобильных приложений со стороны выглядит просто: нашли программиста, он написал код, приложение появилось в сторе. На деле код — только часть работы. За приложением стоят сервер, админ-панель, правила Google Play и App Store и обновления, которые идут годами после релиза. В моём аккаунте разработчика «Malikoglu» в Google Play 36 живых приложений, среди них Verbooze — лауреат MilliNet 2025. Ниже весь путь от идеи до стора глазами инженера, который делает эту работу сам: нужно ли вам приложение вообще, натив или Flutter, из каких этапов состоит работа, что требуют сторы и от чего зависит, сколько стоит создать мобильное приложение.
Что такое разработка мобильного приложения: короткий ответ
Разработка мобильного приложения — это проектирование, дизайн, программирование, тестирование и публикация программы для смартфонов на Android и iOS в Google Play и App Store. В реальных проектах сюда почти всегда входят серверная часть (бэкенд и API), из которой приложение получает данные, админ-панель для управления контентом и поддержка после релиза. Разработка под ключ означает, что за всю эту цепочку отвечает один исполнитель, а не только за экраны.
Если совсем просто, мобильное приложение — это программа, которую ставят на телефон из магазина ради конкретной задачи: банк, такси, изучение языка, игра. В отличие от сайта, оно живёт на самом устройстве и глубже работает с камерой, геолокацией, push-уведомлениями, Bluetooth и офлайн-режимом.
Нужно ли вам приложение: сравнение с мобильным сайтом и PWA
Этот вопрос стоит честно задать до заказа, потому что иногда правильный ответ — «пока нет». Приложение — отдельный продукт: его нужно поддерживать в двух сторах, обновлять и убеждать людей его скачать. Если клиент покупает у вас раз в месяц, обычно хватает хорошего мобильного сайта. Если сервисом пользуются каждый день или несколько раз в неделю, приложение окупается.
| Критерий | Мобильный сайт | PWA (сайт, работающий как приложение) | Мобильное приложение |
|---|---|---|---|
| Частота использования | Разовые визиты из поиска | Регулярно, простые сценарии | Ежедневно или еженедельно |
| Находят в Google | Да, через SEO | Да, через SEO | Нет, через поиск в сторе (ASO) |
| Push-уведомления | Нет | Ограниченно | Полноценно |
| Камера, GPS, Bluetooth, офлайн | Ограниченно | Частично | Полностью |
| Витрина в сторе | Нет | Нет | Google Play и App Store |
| Стартовые затраты | Низкие | Средние | Высокие |
| Поддержка | Обновление сайта | Обновление сайта | Правила сторов, обновления SDK, две платформы |
Мой обычный совет: если продажи идут из поиска, начните с быстрого сайта, сделанного с оглядкой на SEO (подробно — в статье про создание сайта под ключ), а приложение планируйте вторым шагом для постоянных клиентов. Исключения — игры, инструменты без интернета, приложения для курьеров и экспедиторов, продукты на Bluetooth: их с самого начала проектируют как приложения. Например, AzMesh соединяет телефоны напрямую по Bluetooth и Wi-Fi вообще без интернета — сайт так не умеет.
Приложение для iOS и Android: натив или Flutter
В Азербайджане большинство смартфонов на Android, но списывать iOS нельзя. По данным StatCounter за август 2026 года, доли мобильных ОС в Азербайджане такие: Android — 82,23%, iOS — 17,75% (StatCounter Global Stats). Выпустив приложение только под Android, вы теряете примерно каждого пятого пользователя.
Сделать приложение для iOS и Android можно двумя путями:
- Нативная разработка: Kotlin для Android, Swift для iOS. Две кодовые базы и, как правило, два разработчика или две команды.
- Кроссплатформенная разработка: одна кодовая база для обеих платформ. Я работаю на Flutter.
Flutter создан в Google, и официальный сайт описывает его так:
"Flutter is an open-source framework for building beautiful, natively compiled, multi-platform applications from a single codebase."
Перевод: «Flutter — фреймворк с открытым исходным кодом для создания красивых мультиплатформенных приложений, компилируемых в нативный код, из единой кодовой базы».
| Натив (Kotlin + Swift) | Flutter | |
|---|---|---|
| Кодовая база | Две отдельные | Одна |
| Команда | Обычно два специалиста | Один разработчик ведёт обе платформы |
| Новая функция | Пишется и тестируется дважды | Пишется один раз, проверяется на двух платформах |
| Свежие возможности платформы | С первого дня | Иногда нужен плагин или нативный код |
| Игры и 2D-анимация | Возможно | Сильная сторона |
| Когда подходит | Продукты, глубоко завязанные на устройство; отдельные команды | Бизнес-приложения, образование, e-commerce, 2D-игры, MVP |
Все мои 36 живых приложений написаны на Flutter: и сложная образовательная платформа Verbooze, и артиллерийская игра Tank Tussle, и простой конвертер валют. Причина практическая: функция пишется один раз и выходит в оба стора, баг исправляется в одном месте. Для небольшого и среднего проекта это напрямую влияет и на бюджет, и на скорость обновлений.
Натив я советую, когда продукт завязан на самые глубокие возможности платформы (часы, автомобильные системы, специфичное железо) или когда у компании уже есть отдельные Android- и iOS-команды. При этом во Flutter нужный кусок можно написать нативно, так что выбор не «всё или ничего».
Этапы разработки мобильного приложения
Работу я делю на пять этапов. В конце каждого у заказчика на руках конкретный результат, а не «процесс идёт».
1. Идея и объём (MVP)
Всё начинается с вопроса: какую задачу пользователь решит с помощью приложения? Из ответа вытекает объём первой версии — MVP (minimum viable product, минимальная работающая версия продукта). Больше всего денег теряется именно здесь: в первую версию добавляют десятки функций «на всякий случай», и приложение месяцами не доходит до стора.
Результат: письменное описание экранов, функций, ролей и источников данных; зафиксировано, что входит в MVP, а что нет.
2. UX-прототип
До кода экраны и переходы собираются в кликабельный прототип, обычно в Figma. Правка на этом этапе в разы дешевле правки в коде.
Результат: макеты ключевых экранов, пользовательские сценарии (регистрация, основное действие, оплата), цвета и шрифты.
3. Разработка
Приложение на Flutter и серверная часть пишутся параллельно, итерациями: после каждой заказчик ставит тестовую сборку на свой телефон и проверяет.
Результат: тестовые сборки, работающий API, админ-панель, Git-репозиторий.
4. Тестирование, включая закрытое
Приложение проверяется на экранах разных размеров, на старых и новых версиях Android, на iPhone, при слабом интернете и без него. Затем идёт закрытое тестирование (closed testing): в сторе приложение видят только приглашённые тестировщики. Для новых личных аккаунтов Google Play этот этап обязателен — подробности ниже.
Результат: найденные и исправленные ошибки, отзывы тестировщиков, сборка для релиза.
5. Публикация и обновления
Готовятся страница в сторе (название, описание, скриншоты, иконка), политика конфиденциальности и анкета о безопасности данных, приложение уходит на проверку. Релиз — не финиш: дальше мониторинг ошибок, обновления и новые требования сторов.
Результат: живое приложение в Google Play и App Store, полный доступ заказчика к аккаунтам, план обновлений.
Что стоит за приложением: бэкенд, API и админ-панель
Про эту часть заказчики забывают чаще всего. Кроме простых приложений вроде калькулятора или офлайн-игры, почти каждому приложению нужен сервер: аккаунты, товары, заказы, платежи и уведомления нужно где-то хранить и чем-то управлять. Приложение получает данные через API, а вы управляете контентом из админ-панели: добавляете товары, смотрите заказы, отправляете push-уведомления.
Серверную часть я пишу на Laravel — бэкенд остаётся моей основной специализацией больше 10 лет. В Verbooze приложение на Flutter, а бэкенд на Laravel и Python на Ubuntu-сервере: видео отдаётся через FFmpeg, живые уроки идут через JitsiMeet, языковые дуэли работают по WebSocket. Получая коммерческое предложение, уточните: входят ли в него сервер, API и админ-панель, на кого оформлен сервер и сколько он стоит в месяц.
Публикация в Google Play и App Store
Выход в стор — отдельный процесс, и правила здесь меняются регулярно. Факты ниже я проверил по официальным источникам в сентябре 2026 года.
Google Play: аккаунт, закрытый тест, требования
Аккаунт. В Google Play два типа аккаунта разработчика: личный (Personal) и аккаунт организации (Organization). Взнос разовый: в справке Google Play Console сказано «There is a US$25 one-time registration fee» — 25 долларов США, один раз.
Закрытое тестирование. Главное правило для новых личных аккаунтов:
"Developers with personal accounts created after November 13, 2023, must run a closed test for their app with a minimum of 12 testers who have been opted in continuously for at least 14 days."
— Google Play Console Help, App testing requirements for new personal developer accounts
Перевод: «Разработчики с личными аккаунтами, созданными после 13 ноября 2023 года, должны провести закрытое тестирование приложения минимум с 12 тестировщиками, которые участвуют в тесте непрерывно не менее 14 дней».
На практике в плане нужно окно минимум в две недели, а 12 реальных тестировщиков стоит собрать заранее: сотрудники, друзья, лояльные клиенты. Если приложение делается для компании, аккаунт правильнее сразу открывать на компанию, как аккаунт организации.
Безопасность данных (Data safety). В Play Console нужно указать, какие данные собирает приложение и зачем:
"All developers that have an app published on Google Play must complete the Data safety form, including apps on closed, open, or production testing tracks."
Перевод: «Все разработчики, у которых есть приложение в Google Play, должны заполнить форму „Безопасность данных“, в том числе для приложений на треках закрытого и открытого тестирования и на рабочем треке».
Ответы должны совпадать с реальным поведением приложения, включая данные, которые собирают подключённые SDK: Firebase, аналитика, реклама.
Целевой уровень API (target API level). Каждый год Google поднимает планку. Согласно Android Developers, с 31 августа 2026 года:
"New apps and app updates must target Android 16 (API level 36) or higher to be submitted to Google Play"
Перевод: «Новые приложения и обновления должны быть нацелены на Android 16 (уровень API 36) или выше, чтобы их можно было отправить в Google Play».
Для опубликованных приложений есть свой порог: приложение с целевым API ниже Android 15 (API 35) перестаёт быть доступным новым пользователям на устройствах с более новой версией Android. Поэтому, чтобы выпустить даже мелкое исправление в приложении, которое два года не обновлялось, сначала придётся обновить Flutter, SDK и плагины. Приложение — это не «написали и забыли».
App Store: членство, проверка, конфиденциальность
Для публикации в App Store нужно членство в Apple Developer Program. На сайте Apple Developer оно указано как «$99 annual membership» — 99 долларов в год. В отличие от разового взноса Google, платёж ежегодный.
Каждое приложение проходит проверку App Review, а политика конфиденциальности обязательна:
"All apps must include a link to their privacy policy in the App Store Connect metadata field and within the app in an easily accessible manner."
Перевод: «Все приложения должны содержать ссылку на политику конфиденциальности в поле метаданных App Store Connect и внутри приложения, в легкодоступном месте».
Практические советы по опыту 36 приложений
- Открывайте аккаунты в сторах в начале проекта. Подтверждение, оплата и закрытый тест занимают время.
- Держите политику конфиденциальности отдельной страницей на своём сайте. Её требуют оба стора, и адрес не должен меняться.
- Заполняйте Data safety по коду, а не по памяти. Проверьте, что собирает каждая подключённая библиотека.
- Дайте ревьюеру тестовый аккаунт. Если проверяющий не может войти в приложение, проверка затягивается.
После релиза: обновления, аналитика, отзывы и ASO
- Мониторинг ошибок. Инструменты вроде Firebase Crashlytics показывают, на каком телефоне, на каком экране и почему упало приложение. Без них об ошибках вы узнаёте из плохих отзывов.
- Аналитика. Сколько людей регистрируется, доходит до основного действия и возвращается через неделю. Приоритеты новых функций должны вытекать из этих цифр.
- Отзывы и рейтинг. Отвечайте на каждый отзыв, особенно на негативный. Просить оценку стоит после успешного действия пользователя, а не при первом запуске.
- ASO (App Store Optimization). Название, описания, иконка, скриншоты и языковые версии, подобранные под то, что люди вводят в поиске стора. Логика та же, что в SEO, — основы я разобрал в статье «Что такое SEO простыми словами».
Сколько стоит создать мобильное приложение: от чего зависит цена
Цифр здесь не будет: под словами «мобильное приложение» продают и калькулятор на один экран, и платформу с оплатой и админ-панелью. Стоимость и сроки зависят от этих факторов:
| Фактор | Почему влияет на цену и сроки |
|---|---|
| Количество экранов и функций | Каждый экран — это дизайн, код и тесты |
| Платформы | Только Android или Android и iOS; Flutter закрывает обе одной кодовой базой |
| Бэкенд и админ-панель | Подключиться к готовому серверу — одна задача, сделать сервер, API и панель с нуля — другая |
| Интеграции | Платёжные системы, 1С, CRM, карты, SMS, вход через соцсети |
| Функции реального времени | Чат, живые обновления, видео, онлайн-игра требуют WebSocket и дополнительной инфраструктуры |
| Офлайн-режим | Хранение данных на телефоне и последующая синхронизация с сервером |
| Дизайн | Стандартные компоненты или индивидуальный дизайн с анимацией |
| Языки | Каждый язык — отдельные тексты, скриншоты и описание в сторе |
| Работа со сторами | Аккаунты, закрытый тест, политика конфиденциальности, страница в сторе |
| Поддержка | Обновления после релиза, требования к SDK, расходы на сервер |
Реальные результаты: мои приложения
Слова подкрепляю приложениями, которые любой может открыть в сторе.
Verbooze. Первая в Азербайджане платформа для изучения английского на основе геймификации; я её основатель и ведущий разработчик. Приложение для Android и iOS на Flutter, бэкенд на Laravel и Python. Больше 50 000 пользователей, больше 10 000 активных пользователей в день, рейтинг 4,8★ в Google Play по 151 отзыву и 50 000 евро международных инвестиций. На национальной интернет-премии MilliNet 2025 Verbooze занял 2-е место в номинации «Цифровой образовательный ресурс года».
Игры. Tank Tussle: Artillery War (100 миссий в десяти главах и онлайн-дуэли PvP, 500+ скачиваний), Domino, Chess, Checkers, Durak, Sudoku Classic, Block Blaze, Crazy Snake.
Утилиты. AzMesh (5,0★) соединяет телефоны по Bluetooth и Wi-Fi без интернета, сервера и регистрации. Currency Converter (5,0★) конвертирует больше 150 валют по актуальным курсам и показывает графики трендов.
Бизнес-приложения. Официальное приложение интернет-магазина шин Təkərevi.az; кабинет студента Honours Academy (занятия, посещаемость, QR-турникет); приложение для экспедиторов Granite.az, интегрированное с CRM (отслеживание заказов в реальном времени и автоматическое распределение).
Полный список — на странице приложений, подробные кейсы — в разделе проекты.
Разработка приложения на заказ: чек-лист для заказчика
Если вы заказываете разработку мобильного приложения, до подписания договора проясните эти пункты:
- Аккаунты в сторах — на вас. Google Play Console и Apple Developer оформляются на вашу компанию, разработчик подключается к ним как пользователь.
- Исходный код — ваш. Код хранится в вашем Git-репозитории, в договоре прописана передача прав.
- Сервер и домен. Где работает бэкенд, на кого оформлен сервер, сколько стоит в месяц, делаются ли резервные копии.
- Ключи и сервисные аккаунты. Ключи подписи приложения, проект Firebase, аккаунты платёжных систем — под вашим контролем.
- Условия поддержки. Исправление ошибок после релиза, обновления под требования сторов, время реакции.
- Доступ к странице в сторе. Менять тексты и отвечать на отзывы должны иметь возможность и вы.
Красные флаги
- «Опубликуем на нашем аккаунте». Расставшись с подрядчиком, можно потерять приложение вместе с отзывами и установками.
- Код не передают, только готовый файл. Другой разработчик не сможет продолжить работу.
- Про сервер ни слова. Значит, либо он не входит в предложение, либо счёт придёт отдельно.
- «Гарантируем, что приложение примут в стор». Проверку проводят Apple и Google, и решение принимают они.
Частые вопросы
Сколько времени занимает разработка мобильного приложения?
Зависит от объёма: простое приложение — это недели, платформа с бэкендом, оплатой и админ-панелью — месяцы. Заложите в план проверку в сторах и, для нового личного аккаунта Google Play, минимум 14 дней закрытого тестирования.
Сколько стоит создать мобильное приложение?
Однозначной цифры нет: цена зависит от количества экранов, платформ, бэкенда, интеграций, дизайна и поддержки. Сравнивайте не итоговые суммы, а состав работ.
Можно ли сделать приложение самому?
Простое — да, на no-code-платформе или выучив Flutter. Но в бизнес-приложении с сервером, оплатой и требованиями сторов опытный разработчик экономит и время, и деньги.
Нужно ли делать отдельные приложения для Android и iOS?
Страница в каждом сторе своя, но писать код дважды не нужно: на Flutter из одной кодовой базы собираются обе версии.
Как опубликовать приложение в Google Play?
Зарегистрируйте аккаунт в Google Play Console (25 долларов, один раз), загрузите подписанный AAB-файл, заполните страницу в сторе, политику конфиденциальности и форму Data safety. На новом личном аккаунте сначала проведите закрытый тест с 12 тестировщиками в течение 14 дней, затем подайте заявку на доступ к рабочей версии.
Итог
Разработка мобильных приложений — это больше, чем код: идея и MVP, прототип, сервер и админ-панель, тестирование, правила сторов и годы обновлений. Flutter сокращает путь, давая одну кодовую базу для обеих платформ, но грамотное планирование и работу со сторами никакая технология не заменит. Если хотите довести своё приложение от идеи до стора, почитайте о моей разработке мобильных приложений на Flutter и напишите мне.