Android-приложение на Kotlin, которое автоматически синхронизирует фото и видео со смартфона на ПК через локальную сеть.
Требует запущенного Rust-сервера на ПК. Подробнее в репозитории mediaserver.
- Приложение сканирует медиатеку устройства
- Сравнивает файлы с уже отправленными (локальная БД через Room)
- Новые файлы отправляет на сервер по TCP через локальную сеть
- Галерея отображает синхронизированные медиафайлы
- Android 8.0+ (API 26)
- Локальная сеть (Wi-Fi)
- Запущенный mediaserver на ПК в той же сети
| Язык | Kotlin |
| Минимальный SDK | 26 (Android 8.0) |
| БД | Room |
| Фоновые задачи | WorkManager |
| Сеть | OkHttp + TCP |
| Изображения | Coil |
| UI | ViewBinding, RecyclerView, SwipeRefreshLayout |
app/src/main/java/com/mediasync/
├── MainActivity.kt — точка входа
├── GalleryActivity.kt — галерея синхронизированных файлов
├── MediaSyncApp.kt — Application класс
├── api/
│ └── GalleryApi.kt — API для получения медиа с сервера
├── data/
│ ├── SyncDatabase.kt — Room база данных
│ └── SyncedFile.kt — модель синхронизированного файла
├── protocol/
│ └── TcpSender.kt — отправка файлов по TCP
└── sync/
├── MediaScanner.kt — сканирование медиатеки устройства
└── SyncWorker.kt — фоновая синхронизация (WorkManager)
git clone https://github.com/PA3MA3AH/mediaserver-android.git
cd mediaserver-android
./gradlew assembleDebugAPK будет в app/build/outputs/apk/debug/app-debug.apk
При каждом пуше в main автоматически собирается подписанный release APK. Скачать можно во вкладке Actions → последний билд → Artifacts → app-release.
Готовый APK доступен в разделе Releases.
MIT