Drukarnia.BLOG

How to Use Scrcpy on Mac: Complete Setup Guide

I build apps on a MacBook, and for months I tested on a phone sitting next to my keyboard. I would type on the laptop, pick up the phone, tap, put it down, and repeat all day. Mirroring the phone to my screen cut out all of that hand switching.

If you want a second reference, scrcpy.pro has a dedicated Scrcpy for Mac guide with install steps, wireless setup, a command table, and fixes for common errors. The site is built around this free, open-source tool, so its troubleshooting tips cover real problems people hit. Here is the full setup as I run it, in the order that worked for me.

What you need first

You need a Mac, an Android phone, and a USB cable that carries data. Many cheap cables only charge, which causes confusing errors later. Scrcpy needs no root access and no app on your phone.

You also need Homebrew, the package manager for macOS. Check the scrcpy project page for current system requirements, since they change over time. On Apple Silicon Macs, Homebrew installs a build that runs natively.

Step 1: Install Homebrew

If you do not have Homebrew yet, open Terminal and copy the install command from brew.sh. At the time of writing, it looks like this:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Follow the prompts, and read the notes it prints at the end. On Apple Silicon, it may ask you to add Homebrew to your shell path. Then confirm it works:

brew --version

Step 2: Turn on USB debugging

On your phone, open Settings and go to About Phone. Tap Build Number seven times until you see the developer message. Then go to Developer Options and turn on USB Debugging.

Menu names vary by brand. On Samsung phones, Build Number often lives under Software Information. On Xiaomi phones, you may also need to enable a second USB debugging option in the security settings and then reboot.

Step 3: Install scrcpy

One command does the main work:

brew install scrcpy

Homebrew usually brings the tools it needs, including ADB. If you later see "adb: command not found," install the platform tools separately:

brew install --cask android-platform-tools

Then check the version to confirm the install:

scrcpy --version

Step 4: Connect and launch

Plug in your phone and unlock it. A prompt will ask you to allow USB debugging for this computer. Tap Allow, and tick the box to remember the choice if it is your own Mac.

Now check that your Mac sees the device:

adb devices

You should see a serial number with the word "device" next to it. If it says "unauthorized," look at your phone and accept the prompt. Then run:

scrcpy

Your phone appears in a window, and your mouse acts like a finger. Your Mac keyboard types straight into Android apps.

Going wireless

Cables get annoying, so I switch to Wi-Fi when I can. Both devices must be on the same network. Start with the phone plugged in, and run these:

adb tcpip 5555

adb connect YOUR_PHONE_IP:5555

Find the phone's IP in your Wi-Fi settings. Unplug the cable, then run scrcpy again. On Android 11 and newer, you can also use the built-in wireless debugging option, which pairs with a code and skips the cable entirely.

Flags worth knowing

Scrcpy has many options. These are the ones I use most:

--max-size 1024 — Lowers resolution to ease CPU load

--max-fps 30 — Caps the frame rate

--video-bit-rate 2M — Lowers bitrate for weak Wi-Fi

--record demo.mp4 — Saves the screen to a video file

--show-touches — Shows touch dots, great for demos

--turn-screen-off — Mirrors with the phone screen dark

--stay-awake — Keeps the phone from sleeping

--no-audio — Turns off audio forwarding

Audio forwarding works on Android 11 and up. If a flag name errors out, check scrcpy --help, because option names have changed across versions. Older builds used different names for some video settings.

Fixing common problems

Device not found. Run adb devices. If the list is empty, swap the cable, set the USB mode to File Transfer, and confirm debugging is on. You can also restart the ADB server:

adb kill-server

adb start-server

Command not found. Close and reopen Terminal so your path refreshes. If that fails, run brew link scrcpy.

Unauthorized device. Unplug the cable, revoke USB debugging authorizations in Developer Options, plug back in, and accept the prompt again.

Black screen. Unlock the phone before launching. Some apps, like banking apps, block screen capture on purpose, so a black window there is expected.

Wireless keeps dropping. Move closer to the router, use a 5 GHz network if you can, and try a lower bitrate.

A small workflow tip

I keep a short shell alias so I do not retype long commands. For example, I use one alias for a smaller, lighter window and another for recording a demo. Aliases take a minute to set up and save a lot of typing over a month.

You can also drag files onto the scrcpy window to install an APK, which is handy for testing builds. Try that once, and you may not go back to manual installs.

The takeaway

Setup takes about ten minutes: install Homebrew, enable USB debugging, run one brew command, and launch. After that, mirroring is just plugging in and typing scrcpy. My phone now stays in one place on my desk, and I do far less hand juggling during testing.

Articles about local business and interesting people:

Share your ideas in a new publication.
We are waiting for your longread!
e

emmajonnes

@blogvists

1Longreads
5Views
On Drukarnia since October 17

You may also be interested in:

Comments (0)

Support the author first.
Write a comment!

You may also be interested in: