🏗️ Огляд архітектури
FastMediaSorter v2 використовує Clean Architecture + MVVM + Hilt.
Потік шарів
UI → ViewModel → UseCase → Repository → DataSource
Модулі
app_v2/- основний Android-застосунокwear/- companion-застосунок для Wear OS
Ключові принципи реалізації
- UI-шар містить лише presentation-логіку
- Бізнес-правила зосереджені в domain use case
- Data-шар відповідає за network/cloud/local providers
- Складна логіка Activity делегується helper/manager класам
Підсистема Трансляцій
- Окремий
StreamsActivity/StreamsViewModelіз власнимStreamsRepositoryіStreamDataSource. - Вбудоване аудіовідтворення через
StreamInlineAudioManager; міні-панель керування відображає ICY-метадані (станція/трек), не приховуючи список. - Відео/RTSP відкриваються у повноекранному плеєрі; кнопка «Назад» повертає до списку зі збереженням позиції прокрутки.
- Імпорт каталогу:
ImportStreamCatalogUseCaseзавантажує кураторський каталог із швидким тайм-аутом при недоступному хості. - Матриця варіантів: standard/legacy/noLegal - повний набір (HLS/DASH/RTSP + progressive); lite - лише progressive-audio; photos - функція відсутня.
Повна архітектурна документація: ARCHITECTURE.md.