scrcpy not working on a Mac: device unauthorized, no device found, adb missing
When scrcpy is not working on a Mac, the error in Terminal tells you which of three things is wrong. "Device is unauthorized" means the phone has not approved this Mac for USB debugging: unlock the phone and accept the dialog. "Could not find any ADB device" means adb cannot see the phone: check USB debugging is on, and try another cable. "adb not found" means the Android platform tools are not installed, which on a Mac is one Homebrew command. scrcpy's own FAQ is direct about where the fault lies: "This is typically not a bug in scrcpy, but a problem in your environment."
Everything here comes from scrcpy's FAQ, its macOS page, and Google's adb documentation. Installing scrcpy in the first place is covered in mirror Android to a Mac.
Symptom, cause, fix
| Terminal says | Cause the FAQ gives | Fix |
|---|---|---|
adb not found | "You need adb accessible from your PATH" | macOS page: brew install --cask android-platform-tools |
ERROR: Could not find any ADB device | USB debugging is not enabled, or adb does not detect the phone | "Check that you correctly enabled adb debugging." Then run adb devices |
ERROR: Device is unauthorized | The phone has not authorized this computer | "A popup should open on the device. You must authorize USB debugging" |
ERROR: Multiple (2) ADB devices | More than one device or emulator is connected | scrcpy -d for the USB device, scrcpy -e for the wireless one, or scrcpy -s with the serial |
adb server version (41) doesn't match this client (39) | Two different copies of adb are in use | Use one version everywhere, or point scrcpy at one with export ADB=/path/to/your/adb |
Device disconnected, and the window closes | "The adb connection has been closed" | "Try with another USB cable or plug it into another USB port" |
| The screen shows, but clicks and keys do nothing | Some phones need a second setting to allow simulated input | In Developer options, enable USB debugging (Security settings), then reboot the phone |
The FAQ's first advice applies to all of them: "If you encounter any error, the first step is to upgrade to the latest version."
How do I fix "Device is unauthorized"?
The FAQ's answer is short: "When connecting, a popup should open on the device. You must authorize USB debugging." Google's adb page explains what that popup is. On Android 4.2.2 and later, the phone "shows a dialog asking whether to accept an RSA key that allows debugging through this computer", and adb commands cannot run "unless you're able to unlock the device and acknowledge the dialog".
So:
- Unlock the phone and leave the screen on.
- Unplug the cable and plug it in again. Watch the phone for the dialog asking whether to allow USB debugging from this computer.
- Accept it.
- In Terminal, run
adb devices. Google says a working phone is listed with the statedevice. - Run
scrcpy.
If the dialog never appears, scrcpy's FAQ does not give its own steps. It links to a Stack Overflow thread. What Google's documentation does offer is two resets:
- Restart adb on the Mac. Google's instruction for restarting the adb server is
adb kill-serverand thenadb start-server. - Clear the phone's saved approvals. Google's page says a computer stays approved "until you explicitly forget it or revoke adb debugging authorizations on your device". In Developer options, look for the item about revoking debugging authorizations, tap it, then replug. The phone has forgotten every computer, so it has to ask again.
How do I fix "Could not find any ADB device"?
The FAQ says to check that adb debugging is enabled and that "your device must be detected by adb". Run adb devices and read the result.
| adb devices shows | Meaning | Do this |
|---|---|---|
| Nothing under "List of devices attached" | No device is connected, as far as adb can tell | USB debugging and the cable, below |
A serial number and unauthorized | The phone has not approved the Mac | The section above |
A serial number and offline | Google: "The device is not connected to adb or is not responding" | Replug, unlock the phone, restart adb |
When the list is empty:
- Check USB debugging is on. It lives in Developer options. Google's developer options page gives the path on Android 9 and later as Settings > System > Advanced > Developer Options > USB debugging, and explains how to reveal Developer options by tapping Build number seven times. The steps for each phone maker are in Android USB debugging on a Mac.
- Change the cable or the port. The FAQ's advice for a dropped connection is "another USB cable" or "another USB port". Some cables carry power and no data, and those will never show a device.
- Do not go looking for a driver. The FAQ's driver advice is for Windows. Google's page on running apps on a hardware device says of macOS: "No additional configuration required."
Terminal says command not found. What is missing?
adb. The FAQ says scrcpy runs adb commands to set up the connection, and "if adb fails, then scrcpy will not work". On Windows, it says, adb is included in the release. The macOS page makes no such statement. In its package manager section it says "You need adb, accessible from your PATH", and gives brew install --cask android-platform-tools. If you see this error, run that.
scrcpy itself. If you downloaded the static build from the releases page, the macOS page says only to "extract it" and run it from a terminal. A program sitting in a folder you extracted is not on your PATH, so typing scrcpy in a fresh Terminal window will not find it. Run it from inside that folder, or install with Homebrew or MacPorts instead. The macOS page says the MacPorts package "sets up adb for you".
Make sure you picked the right download. The macOS page lists two: aarch64 for Apple silicon Macs and x86_64 for Intel Macs.
Only get scrcpy from its GitHub page or a package manager. The README warns: "Do not download releases from random websites, even if their name contains scrcpy."
What about wireless mode?
The connection page says the device "must be connected on the same network as the computer". If wireless mirroring fails, start again over USB with scrcpy --tcpip. If both a USB and a wireless connection are active, you get the "Multiple ADB devices" error, so use scrcpy -e for the wireless one. More is in scrcpy without a cable.
Do I need scrcpy at all?
If you want to see and control the phone's screen on the Mac, yes, and nothing we sell replaces it. The Relay does not do screen mirroring or remote control.
If you were mirroring the whole phone only to read a text, copy a login code, or grab a photo, there are lighter ways. The Relay shows incoming texts and notifications on the Mac, syncs the clipboard, and lets you drag files from the phone's storage. It needs no USB debugging and no Terminal, and costs $19.99 once. For app demos, testing, and driving the phone with a keyboard, fix scrcpy. It is free and it is the right tool.
Questions people ask
Why does scrcpy say device unauthorized on my Mac?
The phone has not approved this Mac for USB debugging. Unlock the phone, replug the cable, and accept the dialog that asks whether to allow debugging from this computer.
Does scrcpy need a driver on macOS?
No. scrcpy's FAQ mentions drivers for Windows only, and Google's device setup page says macOS needs no additional configuration.
Why can I see my phone in scrcpy but not control it?
scrcpy's FAQ says that on some devices you must enable USB debugging (Security settings) in Developer options to allow simulated input, and reboot the phone. The README says this affects Xiaomi phones especially.