Commit Graph

7 Commits

Author SHA1 Message Date
nk
0c01eaab2d feat(update): авто-обновление APK (как в nkVPN)
UpdateManager: на старте дёргает /app-version, при version_code > BuildConfig.
VERSION_CODE показывает UpdateDialog. Скачивает APK во внутр. Download, сверяет
SHA-256 (защита от подмены по HTTP/битой загрузки), ставит через системный
установщик (FileProvider). force_update делает диалог необкрываемым. versionCode
1→2, versionName 1.0→1.1. Добавлено право REQUEST_INSTALL_PACKAGES, путь в file_paths.
2026-06-06 20:21:55 +03:00
nk
84c2b33473 perf(android): ленивый плеер записей, O(n) merge каталога, @Immutable, лог только в debug
- RecordingPlaybackController: ExoPlayer создаётся лениво (на первый play) и
  освобождается в stop() — раньше второй плеер висел в памяти всю сессию у каждого.
  Поллер позиции 500мс крутится только во время игры (был вечный 2 Гц main-loop).
- StationRepositoryImpl.refreshStations: merge каталога O(n) через apiById/apiByName
  индексы вместо .find на каждую станцию (было O(n²) ~700×700 на холодном старте).
  Убраны verbose Log.d-трейсы (оставлен Log.e/.w на ошибки).
- Track/Station/StreamQuality помечены @Immutable — read-only модели, иначе
  списки tags/qualities делали класс нестабильным → лишние рекомпозиции списков.
- HttpLoggingInterceptor только при BuildConfig.DEBUG (включён buildConfig feature):
  в релизе нет оверхеда на каждый запрос и утечки URL в logcat.
2026-06-06 17:13:48 +03:00
nk
eca0c49ad4 fix(ui): тёмный сплэш с фирменной иконкой вместо белого экрана
- Theme.Radiola -> тёмная (windowBackground #0C1410), прозрачные системные бары
- Theme.Radiola.Splash (core-splashscreen): фон #0C1410 + иконка приложения
- installSplashScreen() в MainActivity; тема сплэша на launcher-активити
2026-06-03 00:27:29 +03:00
nk
bcb999ace9 feat: WebSocket now-playing via Socket.IO from backend 2026-06-02 19:52:15 +03:00
nk
a83672b455 feat: auth screen with auto-redirect, sync favorites/history with backend 2026-06-02 19:12:07 +03:00
nk
28309c201e chore: add Lucide icons dependency and replace Material Icons in navigation 2026-06-01 12:54:36 +03:00
nk
8f26bf16d3 chore: add app module build config and manifest 2026-06-01 11:57:59 +03:00