ZapretKVN-android/app-updater
Repository files (latest commit first)
Filename Latest commit message Latest commit date
loop-uh 02e1f9eecb
Some checks failed
Android CI / build (push) Has been cancelled
Обновления: сами в фоне, только изменённые части APK, без всплывающих окон
- Маршрут: при включённом VPN проверка идёт наперегонки напрямую и через
  туннель, выигрывает первый ответ; без VPN — напрямую, затем временный
  VPN-маршрут. Промежуточных «Forgejo не отвечает» больше нет, ошибка —
  только если не сработал ни один маршрут. Удачный маршрут запоминается.
- Подключённый VPN больше не перезапускается ради обновления: правило
  «запросы приложения к Forgejo — через выбранный proxy» теперь постоянное
  (RuntimeConfigOptions.standingUpdaterPackageName; без proxy пропускается).
- Дельта: центральный каталог нового APK читается по Range, совпадающие
  записи копируются из установленного APK, остальное догружается; итог
  сверяется с опубликованным SHA-256, при любом сомнении — полная загрузка
  с докачкой. 0.5.0 → 0.5.1: 3,39 МБ вместо 117,8 МБ.
- Фон: проверка при запуске и раз в сутки (JobScheduler, без новых
  зависимостей); Stable скачивается сам (по мобильной сети — если ≤ 25 МБ).
- Установка через PackageInstaller: на Android 12+ после первой установки
  самим приложением — без подтверждения; иначе тихое уведомление и баннер,
  установщик открывается только по нажатию. Всплывающий диалог убран.

Проверено: 675 юнит-тестов, lint, verify-project.sh, 32/32 UI- и
updater-тестов на эмуляторе API 37 (тихая установка — 5 с без окна).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 20:31:42 +03:00
..
src Обновления: сами в фоне, только изменённые части APK, без всплывающих окон 2026-10-14 20:31:42 +03:00
build.gradle.kts Обновления: сами в фоне, только изменённые части APK, без всплывающих окон 2026-10-14 20:31:42 +03:00