AndroidDC 1.0.0
One window on Windows that drives Android devices over plain adb - mirroring, internet sharing in both directions, files, apps, contacts and messages, radios and users. Nothing is installed on the phone.
Getting started
- Turn on USB debugging on the phone and plug it in.
- Download this release (Source code, zip) and unpack it.
- Run
get-upstream.ps1once: it fetches scrcpy and gnirehtet from their official releases and checks them against SHA256. - Double-click
androiddc.vbs.
Windows 10 or 11 with Windows PowerShell 5.1 - nothing else to install. The full guide is in docs/.
What is in it
Fourteen tabs: Device, Tethering, Advanced (every scrcpy option, adb tools, root / recovery), Apps, Contacts, SMS, Cam / Mic, Files, Running, Wi-Fi, Bluetooth, NFC, Users and Shell (live shell and logcat). Every list has its actions on the right mouse button, and every page fits the smallest window.
Fixed before release
A review of the whole code, each fix checked on a phone:
- Text you type reaches the phone whole. adb and the phone's shell split arguments at spaces, and Windows PowerShell drops
"inside them: an SMS body kept its first word, a Wi-Fi name or password with a space failed, and a name with an apostrophe broke the command. Such text now travels as one quoted argument, encoded in base64. - Turn Wi-Fi off while sharing no longer turns Wi-Fi on at the end on a phone where it was off.
get-upstream.ps1 -CacheFolderdeletes only the archives it used, not every.zipin that folder.- Apps are labelled user / system and enabled / disabled by whole package name, not by prefix.
- Search and Recent files hits: Move to PC, Rename and Compress work on them.
- Filter boxes take
[ ]and*literally; Wi-Fi networks are sorted by signal as a number; each saved network is listed once, including on Android 15 and when two names differ only in case. - A new contact's details go to the row just created; logcat no longer silences the live shell.
- When a phone refuses to install the sharing client over USB (
INSTALL_FAILED_USER_RESTRICTED, seen on Xiaomi), the log says which setting allows it. - Sharing can be started again right after it was stopped; before, the second start failed because the stopped relay's log files were still held open.
Verified
- Android 15: a contact and a user whose names hold
'"&$added, edited and removed through the window; an SMS with such a body composed in the phone's own app, read back from its screen, and not sent; a Wi-Fi network with such a name and password joined and forgotten; the saved-network list against the phone's own; Wi-Fi around sharing, on before and off before; a real scan in order. - Android 13: every such text sent to the phone as one argument and checked there, including the text Send text types; the whole test suite.
- Not checked through a phone's screen: Send text typing into an app.
CI checks every commit, and tests\ holds eleven tests anyone can run.
See CHANGELOG.md.