PCControl — система удалённого управления компьютером через локальную сеть или интернет.
Управляй своим ПК с телефона: включай через Wake-on-LAN, выключай, перезагружай, следи за нагрузкой в реальном времени и управляй медиа — не вставая с дивана.
PCControl/
├── android/ # Android-приложение (Kotlin + Jetpack Compose)
├── server/ # WebSocket-сервер (Java)
├── client/ # ПК-клиент, подключается к серверу (Java)
└── dll/ # Нативная библиотека управления медиа (C++)
Мобильный клиент на Kotlin + Jetpack Compose.
- 🟢 Включение ПК через Wake-on-LAN (Magic Packet)
- 🔴 Выключение / 🔄 Перезагрузка / 🔒 Блокировка экрана
- 📊 Мониторинг CPU, RAM, Диска в реальном времени (авто-обновление каждые 5 сек)
- ⏯️ Управление медиа: play/pause, следующий/предыдущий трек, mute
- 🔁 Авто-переподключение при разрыве связи
- 🔐 Авторизация по секретному ключу
WebSocket-сервер — связующее звено между телефоном и ПК.
- Принимает подключения от Android-приложения и ПК-клиента
- Маршрутизирует команды между ними
- Авторизация по API ключу
- Отдаёт статистику мониторинга
Агент, запущенный на ПК. Подключается к серверу и выполняет команды.
- Выполняет команды: shutdown, reboot, lock, monitor
- Собирает и отправляет данные CPU / RAM / Disk
- Управляет медиа через нативную DLL
Нативная библиотека для управления медиа на Windows.
- Управление системным звуком и медиаплеером через Windows API
- Подключается к Java-клиенту через JNI
- Исключает необходимость вызовов PowerShell
cd server
# Настрой config: укажи API_SECRET_KEY и порт (по умолчанию 8080)
java -jar server.jarcd client
# Укажи адрес сервера и секретный ключ в конфиге
java -jar client.jar- Установи APK на телефон
- Открой приложение → Настройки
- Укажи адрес сервера (
ws://IP:8080/ws/) - Укажи секретный ключ
- Укажи MAC-адрес ПК для Wake-on-LAN
- Нажми «Подключиться»
ipconfig /allИщи строку Physical Address у нужного сетевого адаптера.
| Компонент | Требования |
|---|---|
| Android App | Android 8.0+, Java 17+ |
| Server | Java 17+, открытый порт 8080 |
| Client | Windows 10/11, Java 17+ |
| DLL | Windows 10/11, Visual C++ Runtime |
[Android] ──WebSocket──► [Server] ◄──WebSocket── [PC Client]
│
[C++ DLL]
(Media Control)
[Android] ──UDP broadcast──► [ПК] (Wake-on-LAN, без сервера)
Открой папку android/ в Android Studio:
Build → Build Bundle(s) / APK(s) → Build APK(s)
APK будет в android/app/build/outputs/apk/debug/
cd server && ./gradlew jar
cd client && ./gradlew jarОткрой dll/ в Visual Studio → Build Release
MIT — делай что хочешь.