Обновление устаревшего приложения — это перенос проекта на актуальные SDK, версии ОС и архитектуру с полным сохранением пользователей, данных и истории покупок. Делается через аудит кода, миграцию базы, поэтапную замену зависимостей и тестирование на реальных устройствах. Стоимость в Казахстане в 2026 году — от 350 000 ₸.

Когда приложению действительно нужно обновление

Не каждое «старое» приложение требует вмешательства. Сигналы, по которым мы определяем, что откладывать дальше нельзя:

  • Приложение перестало собираться — старый Xcode или Android Gradle Plugin несовместим с новыми зависимостями, CI падает на сборке.
  • App Store или Google Play отклоняют апдейт — Apple требует сборку под актуальный SDK, Google поднимает минимальный targetSdkVersion ежегодно. Без обновления вы физически не сможете выпустить апдейт.
  • Падения на новых версиях ОS — iOS 18/19 и Android 15/16 ломают поведение устаревших API, и пользователи видят вылеты при запуске.
  • Зависимости без поддержки — библиотеки заброшены, в них известные уязвимости, нет патчей под новые устройства.
  • Накопленный технический долг — каждая правка занимает в разы больше времени, чем должна.

Если симптомы связаны не с устаревшим кодом, а с устаревшим интерфейсом, стоит сначала разобраться, когда приложению нужен редизайн — это другая задача с другим бюджетом. А если правки тормозят из-за накопленных «костылей», читайте отдельный разбор про технический долг в мобильном приложении.

Почему «просто пересобрать» не работает

Распространённое заблуждение владельцев: «обновите версию SDK и выложите заново». На практике повышение targetSdk или iOS Deployment Target тянет за собой цепочку:

  • устаревшие методы помечены как deprecated и удалены — код не компилируется;
  • изменилась модель разрешений (камера, геолокация, уведомления, доступ к фото) — без доработки функции молча перестают работать;
  • поменялись правила фонового выполнения и хранения файлов — данные могут «исчезать» для пользователя;
  • сторонние SDK (платежи, аналитика, пуши) требуют своих мажорных обновлений с breaking changes.

Поэтому обновление — это управляемый инженерный процесс, а не одна кнопка. Подробный разбор подхода мы собрали на странице об обновлении приложений.

Как сохранить данные пользователей при обновлении

Главный страх заказчика — потерять базу пользователей, их покупки, прогресс и настройки. Сохранность данных обеспечивается на трёх уровнях.

1. Локальные данные на устройстве

Core Data, SQLite, Realm, SharedPreferences и Keychain/Keystore требуют версионированных миграций схемы. Мы пишем миграции, которые при первом запуске новой версии переносят старую структуру в новую без обнуления. Обязателен тест апгрейда «со старой версии на новую» на реальном устройстве, а не установка с нуля.

2. Серверная база и API

Если у приложения есть бэкенд, обновляем API с обратной совместимостью: старые клиенты продолжают работать, пока пользователи постепенно переходят на новую версию. Миграции БД на проде делаем с резервной копией и планом отката.

3. Авторизация и платежи

Токены, сессии, привязки к Apple ID / Google аккаунту и история подписок сохраняются. Мы не сбрасываем пользователей в принудительный релогин и сверяем, что восстановление покупок (restore purchases) работает после апдейта.

Этапы работ по обновлению

  1. Аудит. Анализ кодовой базы, версий SDK, зависимостей, архитектуры и точек риска. На выходе — отчёт и смета.
  2. План миграции. Определяем порядок: что обновляем первым, где нужны миграции данных, что можно безопасно переписать.
  3. Обновление окружения. Поднимаем язык (Swift, Kotlin), тулчейн, целевые версии ОС, чиним сборку.
  4. Замена зависимостей. Меняем заброшенные библиотеки на поддерживаемые, обновляем SDK платежей, пушей, аналитики.
  5. Миграции данных. Пишем и тестируем перенос локальной и серверной базы.
  6. Тестирование. Регресс на матрице устройств и версий ОС, отдельно — сценарий апгрейда поверх старой версии.
  7. Релиз. Поэтапная выкатка в App Store / Google Play, мониторинг крашей и метрик после публикации.

Сколько стоит обновление приложения в Казахстане в 2026

Цена зависит от возраста проекта, объёма кода, наличия бэкенда и того, сколько зависимостей придётся менять. Ориентиры по рынку KZ на 2026 год:

Тип работ Что входит Стоимость, ₸ Срок
Аудит и смета Анализ кода, отчёт о рисках, план миграции от 150 000 2–4 дня
Минимальное обновление Подъём SDK, фикс сборки, релиз в сторы от 350 000 1–2 недели
Полная миграция (одна платформа) SDK, зависимости, миграции данных, тесты от 900 000 3–6 недель
iOS + Android вместе Обе платформы, серверная часть от 1 700 000 5–10 недель
Обновление + редизайн Технический апгрейд и обновление интерфейса от 2 500 000 от 8 недель

Точную цифру по вашему проекту даём после аудита — присылаем смету в течение 24 часов. Для проектов в южной столице работает отдельное направление доработки приложений в Алматы с разбором кода и фиксированной сметой.

Обновить или переписать с нуля

Ключевое решение проекта. Переписывание оправдано не всегда — оно дороже, дольше и несёт риск потерять рабочую логику, накопленную годами.

  • Обновляем существующее, если бизнес-логика рабочая, а проблема в устаревших версиях и зависимостях. Дешевле, быстрее, безопаснее для данных.
  • Переписываем, если архитектура не масштабируется, технология снята с поддержки целиком, либо обновление выходит дороже нового кода. Тогда данные переносятся через миграции, а старая версия какое-то время работает параллельно.

В большинстве случаев правильный путь — поэтапное обновление, а не полная переделка. Мы честно говорим, когда переписывать выгоднее, а когда это лишние траты.

Кто делает обновление

Applications.kz — digital-студия мобильной разработки, работает с 2007 года, более 300 реализованных проектов на рынках Казахстана, ОАЭ и Таиланда. Берём как собственные проекты, так и чужой унаследованный код: разбираемся в архитектуре, документируем и приводим в порядок. Директор — Иван Калита. Обсудить обновление вашего приложения: +7 (707) 928-13-15.

Частые вопросы

Потеряются ли данные пользователей при обновлении?

Нет, если миграции написаны и протестированы корректно. Мы версионируем схему локальной базы, делаем бэкап серверной БД перед изменениями и обязательно тестируем сценарий установки поверх старой версии на реальном устройстве. Покупки, подписки и авторизация сохраняются. Полная потеря данных — это следствие ошибки, а не нормальный исход обновления.

Можно ли обновить приложение, если исходный код частично утерян?

Частично да. Если потеряны вспомогательные модули, мы восстанавливаем их по декомпилированной версии и документации. Если утерян основной проект и осталась только сборка из стора — обычно требуется переписывание с переносом данных. Точную картину даёт аудит: на нём мы оцениваем, что сохранилось и что реально восстановить.

Сколько времени занимает обновление?

Минимальное обновление с подъёмом SDK и фиксом сборки — 1–2 недели. Полная миграция одной платформы с переносом данных и тестами — 3–6 недель. Обе платформы вместе с серверной частью — 5–10 недель. Точный срок зависит от объёма кода и количества устаревших зависимостей и фиксируется после аудита.

Что будет, если не обновлять приложение вообще?

Сначала вы не сможете выпускать апдейты — сторы требуют актуальный SDK. Затем приложение начнёт падать на новых версиях iOS и Android, пользователи будут уходить и ставить низкие оценки. В худшем случае Apple или Google скрывают приложение из поиска или снимают с публикации. Технический долг при этом растёт и удорожает любые будущие правки.

Обновление и редизайн — это одно и то же?

Нет. Обновление — это техническая задача: версии ОС, SDK, зависимости, безопасность, миграции данных. Редизайн — это переработка интерфейса и пользовательского пути. Их можно делать вместе, чтобы выпустить один релиз, но это разные работы с разными бюджетами. Часто достаточно технического апгрейда без смены дизайна.