Skip to content

Repository files navigation

Remote - Multi Scrcpy Manager

Remote adalah aplikasi Kotlin Multiplatform (Compose Desktop) untuk mengelola perangkat Android menggunakan scrcpy dan adb. Aplikasi ini memudahkan pengguna untuk mengatur environment tooling secara terpusat tanpa harus mengkonfigurasi System PATH secara manual.

Fitur Utama

  • Otomatisasi Unduhan: Mendukung fitur unduh dan ekstraksi scrcpy (yang sudah ter-bundle dengan adb) langsung dari rilis resmi GitHub Genymobile.
  • Auto-Detect: Dapat mendeteksi instalasi scrcpy dan adb dari environment PATH sistem operasi Anda jika belum disetel.
  • Validasi Path: Memastikan executable berfungsi dengan baik dan menampilkan indikator visual apabila path tidak valid.
  • Konfigurasi Lokal: Menyimpan konfigurasi secara persisten menggunakan Java Preferences sehingga pengaturan tetap ada setelah aplikasi ditutup.
  • UI Modern (MVI): Dibangun dengan antarmuka yang bersih menggunakan Compose Multiplatform (Material 3) dan pola arsitektur Model-View-Intent.

Persiapan Perangkat Android

Agar aplikasi Remote (dan scrcpy) dapat terhubung dan mengontrol perangkat Android Anda, lakukan pengaturan awal berikut pada ponsel Android Anda:

  1. Aktifkan Opsi Pengembang (Developer Options):
    • Buka Settings (Pengaturan) > About Phone (Tentang Ponsel).
    • Ketuk (tap) menu Build Number (Nomor Bentukan) sebanyak 7 kali berturut-turut hingga muncul notifikasi "You are now a developer!".
  2. Aktifkan USB Debugging:
    • Kembali ke menu utama Settings, buka Developer Options (biasanya ada di menu System atau Additional Settings).
    • Cari dan aktifkan toggle USB Debugging.
  3. Koneksikan ke PC/Laptop:
    • Sambungkan HP Android Anda ke PC menggunakan kabel USB yang mendukung transfer data.
    • Perhatikan layar HP Anda. Akan muncul jendela popup dengan tulisan "Allow USB debugging?".
    • Centang opsi "Always allow from this computer", lalu tekan OK / Allow.
  4. (Khusus pengguna Xiaomi / Redmi / POCO) Akses Kontrol Layar:
    • Agar aplikasi bisa menyimulasikan sentuhan klik mouse dan keyboard PC ke HP, pastikan Anda juga mengaktifkan toggle USB Debugging (Security settings) di menu Developer Options.

Setelah persiapan di atas selesai, aplikasi Remote siap mendeteksi dan menampilkan layar ponsel Anda!

Rilis dan CI/CD

Aplikasi ini dilengkapi GitHub Actions untuk mem-build dan merilis secara otomatis.

  1. Versi aplikasi diatur melalui variabel app.version di file gradle.properties.
  2. Setiap push ke branch master, GitHub Actions akan otomatis melakukan kompilasi dan packaging native installer untuk semua platform JVM:
    • Windows: .msi
    • macOS: .dmg
    • Linux: .deb
  3. Hasil build tersebut akan diunggah dan dirilis secara otomatis di tab Releases GitHub.

Struktur Modul

Proyek ini dipisah menjadi tiga modul utama:

  • :core: Logika bisnis (Pure Kotlin) tanpa ketergantungan UI, berisi kontrak tooling, data class model, repository, use cases (seperti auto-download), dan implementasi JVM.
  • :shared: Komponen antarmuka menggunakan Compose Multiplatform. Dilengkapi Voyager untuk navigasi state dan BaseViewModel untuk flow MVI.
  • :desktopApp: Entry point peluncur aplikasi dan konfigurasi packaging Compose Desktop.

Panduan Eksekusi Lanjut

Bagi developer, jalankan script Gradle berikut pada terminal:

  • Jalankan Aplikasi:
    .\gradlew.bat :desktopApp:run
  • Build Installer Native:
    .\gradlew.bat :desktopApp:packageDistributionForCurrentOS
  • Menjalankan Unit Test:
    .\gradlew.bat test

Catatan: Aturan arsitektur lengkap dapat dilihat pada file konfigurasi AGENTS.md.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages