dobrovolskiy.com
EN
← все проектымобильное · 2026

Шаблон приложения Ultimate App

Android-оболочка на WebView с самообновляющимися веб-бандлами, откатом и аналитикой поведения.

Ultimate App — переиспользуемый шаблон для приложений, чей интерфейс поставляется в виде веб-бандла, обновляемого по воздуху, так что APK почти никогда не меняется.

Ultimate App — переиспользуемый шаблон для приложений, чей интерфейс поставляется в виде веб-бандла, обновляемого по воздуху, так что APK почти никогда не меняется.

Тонкая Kotlin-оболочка раздает бандл из внутреннего хранилища через WebViewAssetLoader (офлайн в первую очередь), незаметно скачивает и проверяет по SHA-256 новые релизы, подготавливает их, автоматически откатывается, если новый бандл так и не подтвердил загрузку, и поддерживает push через FCM.

Бэкенд на FastAPI (Postgres + S3/MinIO) имеет серверно-рендерящуюся админ-панель для релизов, статистики установок, тепловых карт нажатий/прокрутки поверх собранных скриншотов устройств и отчетов об ошибках клиентов.

Это ядро, на котором построено продакшен-приложение маркетплейса грузоперевозок, синхронизируемое через манифест ядра.

Что умеет

  • OTA-обновления бандлов: проверка версии, загрузка zip, проверка SHA-256, незаметная подготовка, обязательные релизы, подсказка '?updated=1' для интерфейса
  • Автоматический откат с 15-секундным watchdog загрузки и черным списком сломанных кодов версий
  • Офлайн в первую очередь: бандл разворачивается из assets APK при первом запуске, все обращения к серверу асинхронные
  • Ядро аналитики поведения: нормализованные нажатия/перемещения/прокрутки/экраны/JS-ошибки буферизуются офлайн, тепловые карты и галерея экранов устройств в админке
  • Push через data-сообщения FCM с диплинками; JS-интерфейс NativeBridge (getInfo, isOnline, checkForUpdate, captureScreen...)
  • Инструменты публикации (semver + автоматический номер сборки), синхронизация core.manifest в производные приложения, docker compose с redroid для тестирования без устройства

Полная система OTA-доставки с проверкой целостности и самовосстанавливающимся откатом, плюс встроенный слой продуктовой аналитики (тепловые карты поверх реальных скриншотов устройств); проверена как основа развернутого коммерческого приложения.

Нужно что-то похожее?

Делаю это вживую на звонке в Zoom / Яндекс Телемост, вы смотрите на экран, таймер останавливается по вашему слову. Первые 15 минут бесплатно.

Ещё проекты

RYTA: маркетплейс грузоперевозок и спецтехникиОфлайн-ориентированная биржа грузов и транспорта с OTA-обновлениями для Android, веба и мессенджера MAXBro LocatorЖивой локатор в стиле компаса для велосипедных компаний с обменом контактами через звук.Sober: счетчик днейМинималистичный счетчик трезвых дней с кругом друзей, которые делятся своими сериями.