Four Methods to Mirror Your Android Device Screen to PC

Vinicius Strugata Ambrosio
7 min readDec 29, 2024

--

I’m a Mendix LowCode developer specialized in mobile development. Unlike Web or Desktop development, where you can test your code directly on Windows or Mac, mobile development requires the use of Android or iOS devices. Since I’m part of a team, sometimes I need to show my device’s screen to a coworker (in a Google Meetings call) to explain a particular part of the code or feature. This tutorial shows four ways to do this.

My prompt to Copilot: “Can you give me an image of a cellphone floating in front of the screen of a PC Monitor and its image being mirrored by the screen? Consider that this PC is located in a futuristic office.” Interesting to note that the Microsoft IA chose an Apple computer instead of a PC 😊

SCRCPY — Screen Copy

This is my preferred method! SCRCPY is an open-source, fast, lightweight solution to mirror the Android device screen on the PC. The main features include:

  • You can use your PC’s keyboard & mouse to interact with your app.
  • Bi-directional Copy/Past
  • Screen Recording
  • Camera Mirroring
  • Virtual Display
  • Wireless connection
  • … and many more (see the docs)

Procedure

[SCRCPY-1] First and foremost, you need to enable the Developer Options on your Android. See the doc Enable Developer Options for details.

[SCRCPY-2] Enable the USB debugging.

[SCRCPY-3] Install SCRCPY. Four options (use PowerShell to execute the commands below):

  • [ i ] Using Winget (default package manager tool on Windows). This will install SCRCPY and also adb
winget install --exact Genymobile.scrcpy
choco install scrcpy
choco install adb
scoop install scrcpy
scoop install adb

[SCRCPY-4] Use a USB cable to connect the PC to your Android Device. It’s possible to connect wirelessly, but I prefer via cable.

[SCRCPY-5] Using PowerShell, type scrcpy to execute the app. Pay attention to your device screen. For the first time, a popup message will appear asking for permission to allow USB debugging. Turn on the flag Always allow from this computer:

[SCRCPY-6] Repeat the command execution. This time you’ll be able to see the Android Device screen mirrored to your PC screen.

SCRCPY: Easy way to mirror Android screen on PC!

Microsoft Phone Link

⚠️Before following this procedure, check if your Android device supports phone link⚠️.

Phone Link is a pre-installed feature in Windows 11 in recent updates. It allows you to connect your Windows PC to your Android or iOS device to access content and apps from your mobile device.

You can use Phone Link to:

  • Make and receive phone calls
  • Read and reply to messages
  • View your contacts
  • Review your call history
  • Check and dismiss notifications
  • Access your mobile apps (via Screen Mirroring) — I’ve tested only with an Android device
  • Transfer content between your devices

Procedure

[PHONELINK-1] If needed, install the Phone Link app on your Windows using the Microsoft Store. This may not be required, since this app was released as part of the Windows Update in 2022.

[PHONELINK-2] Install the Phone Link app on your Android Device using the Google Play Store.

[PHONELINK-3] Use the shortcut key Windows+S and type Phone Link and then hit Enter.

[PHONELINK-4] Choose Android, enter your credentials and you’ll get a QR Code. Scan this code with your device

[PHONELINK-5] You will get a code to be entered into your device

[PHONELINK-6] After this, you need to authenticate via the Microsoft 2FA Authenticator. At the end, you’ll get a success message:

[PHONELINK-7] Follow the instructions to unlock all features. You’ll need to confirm some permissions and also pair your PC and Device via Bluetooth.

[PHONELINK-8] You should get a message like this

[PHONELINK-9] ⚠️⚠️⚠️At this point, we should be able to mirror the device screen onto your PC ⚠️⚠️⚠️! However, if you cannot mirror your device screen it means your device is not compatible (as mine, Samsung M31 used for testing). See the full List of Supported Devices and search for your device.

[PHONELINK-10] Fortunately, I have another Android device (Samsung A53), this time compatible, and the result is as shown below:

DroidVNC-NG

DroidVNC-NG is a VNC Server app for Android that does not require root privileges. Once the VNC Server is running on your Android, it’s possible to use any VNC Client to establish a connection that allows screen sharing.

Procedure

[DROIDVNC-NG-01] Install DroidVNC-NG on your Android Device

[DROIDVNC-NG-02] Launch the DroidVNC-NG app and hit the button Start. You must allow some required permissions so that DroidVNC-NG can work properly. After this, it will be shown an IP address to connect to:

[DROIDVNC-NG-03] Now, back to your PC, install a VNC Client, like TightVNC. Open a PowerShell terminal and type the command below (or download the installer from TighVNC):

winget install -e --id GlavSoft.TightVNC

[DROIDVNC-NG-04] Launch the TightVNC Client and enter the IP address given by DroidVNC-NG

[DROIDVNC-NG-05] Click on Connect and you will have your Android device screen mirrored on your PC!

Android Studio

Starting with Android Studio 2022.2.1, you can mirror your device’s screen within the UI’s IDE. It works well, and eventually, you’ll be using Android Studio to debug or inspect with LogCat, so all the tools you need for mobile development are in the same IDE.

However, Android Studio is super heavy! You must have a powerful machine to run Android Studio + Studio Pro + Google Chrome + Node.JS + JAVA + YourAntiVirus!

Procedure

[ANDROIDSTUDIO-1] Follow the [SCRCPY-1] and [SCRCPY-2] steps above

[ANDROIDSTUDIO-2] If you do not have Android Studio installed, download and install it before proceeding.

[ANDROIDSTUDIO-3] Redo the step [SCRCPY-4] if required.

[ANDROIDSTUDIO-4] Launch Android Studio. Unfortunately, you need to open a project to be able to see the mirrored screen. Therefore, create or open a project of your choice.

[ANDROIDSTUDIO-5] If you did the SCRCPY procedure steps correctly, you should see your device listed in the Device Manager list:

[ANDROIDSTUDIO-6] Click on the Running Devices button. Then click on the + button to add your physical device

[ANDROIDSTUDIO-7] After doing this, you’ll be able to see your device inside Android Studio IDE:

Bonus: SCRCPY Plus

As a bonus, you may consider SCRCPY+, a GUI version of SCPCPY based on Electron.JS.

Procedure

[SCRCPY Plus-1] Follow the [SCRCPY-1] and [SCRCPY-2] steps above

[SCRCPY Plus-2] Install SCRCPY Plus

  • Using Winget
winget install -e --id Frontesque.scrcpy+

[SCRCPY Plus-3] Redo the step [SCRCPY-4] if required.

[SCRCPY Plus-4] Launch SCRCPY Plus. I may be required to allow the USB debugging as shown in [SCRCPY-5]

[SCRCPY Plus-5] Scroll down in this window and hit the START SCRCPY button

[SCRCPY Plus-6] If everything goes well, you’ll get your Android Device Screen mirrored on your PC. The big advantage of SCRCPY Plus is the options available for launching (like always on top, show touches, etc…). Although these options are also available on SCRCPY, the UI eases its utilization.

Conclusion & Comments

  • As I said earlier, I prefer and recommend the usage of SCRCPY or SCRCPY+ to mirror your device screen to PC. They are lightweight and efficient solutions for this purpose.
  • In addition, I avoid using Android Emulators (such as BlueStacks), as they can contain bloatware and other threats. If you need to use an Android Emulator, use the one provided by Android Studio.
  • The PhoneLink method described above, despite the fact it offers the option to connect an iOS device, it seems that it doesn’t allow screen mirroring … (?) 🤔Please correct me if I’m wrong in the comments.
  • In theory, if we find a VNC Server for iOS, we could use a method similar to DROIDVNC-NG to mirror the iOS screen.

Additional References

--

--

Vinicius Strugata Ambrosio
Vinicius Strugata Ambrosio

Written by Vinicius Strugata Ambrosio

Mendix Developer, Python Enthusiast and Flutter/Dart Learner — https://www.linkedin.com/in/vstram/

No responses yet