Mirror Android Device to Computer

By  on  

As I continue my adventure into Android development, pair programming has been a huge help in learning this new platform. When it's time to build and run the app, relying on the emulator is a fools' game -- the emulator is slow and it's hard to reliably simulate gestures.

If you have an android device, like a phone or tablet, you can plug it into your computer and mirror the display to your computer using an awesome utility called scrcpy!

Start by installing scrcpy with Homebrew:

brew install scrcpy

You may also need to install adb:

brew cask install android-platform-tools

Once you have scrcpy installed, you can start mirroring your Android phone to your computer by executing the command:

scrcpy

The Android device, whether phone or tablet, obviously must be connected to the computer at the time. The mirroring is super responsive and much nicer than an Android emulator. I love using scrcpy to pair program or record videos of app interactions.

When I first started Android development, I was worried I'd be stuck trying to use an emulator to demo features or bugs. Big thanks to scrcopy for making Android life easier!

Recent Features

  • By
    JavaScript Promise API

    While synchronous code is easier to follow and debug, async is generally better for performance and flexibility. Why "hold up the show" when you can trigger numerous requests at once and then handle them when each is ready?  Promises are becoming a big part of the JavaScript world...

  • By
    CSS Filters

    CSS filter support recently landed within WebKit nightlies. CSS filters provide a method for modifying the rendering of a basic DOM element, image, or video. CSS filters allow for blurring, warping, and modifying the color intensity of elements. Let's have...

Incredible Demos

  • By
    “Top” Watermark Using MooTools

    Whenever you have a long page worth of content, you generally want to add a "top" anchor link at the bottom of the page so that your user doesn't have to scroll forever to get to the top. The only problem with this method is...

  • By
    Using Opacity to Show Focus with jQuery

    A few days back I debuted a sweet article that made use of MooTools JavaScript and opacity to show focus on a specified element. Here's how to accomplish that feat using jQuery. The jQuery JavaScript There you have it. Opacity is a very simple but effective...

Discussion

  1. Akis

    Thank you David! Nice tool but on macOS 10.13.6 with adb on PATH and after successfully wireless connected (through adb) to my Xiaomi Mi 9, running

    scrcpy

    I took this error log:

    ERROR: Command not found: [~/Android/platform-tools/adb scrcpy], [push], [/usr/local/Cellar/scrcpy/1.11/share/scrcpy/scrcpy-server], [/data/local/tmp/scrcpy-server]
    ERROR: (make 'adb' accessible from your PATH or define its fullpath in the ADB environment variable)
    ERROR: Could not execute "adb push"
    

    Everything works but scrcpy… Any idea?

  2. Akis

    Actually, by removing

    export ADB="$ANDROID_SDK_HOME/platform-tools/adb scrcpy"

    from my .bash_profile, the first error line reads:

    ERROR: Command not found: [adb], [push], [/usr/local/Cellar/scrcpy/1.11/share/scrcpy/scrcpy-server], [/data/local/tmp/scrcpy-server]

    I pushed (with “adb push”) the appropriate file successfully on my phone, just to test if adb push command works.

  3. JJS

    If you use the Android Emulator from Google based on x86 processor with HAXM, it’s superfast, and superfast loaded. If you use the ARM images it’s slow as hell indeed.

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!