【scrcpy】PCとAndroidをワイヤレス(無線)で接続する方法

この記事では、Windows上にAndroidスマホの画面をミラーリングするツール「scrcpy」をワイヤレスで接続する方法を書きます。
ADB環境をワイヤレスで接続できたらこっちのもんです。
超ざっくり書くと以下の手順です。
- scrcpyを使えるように環境を構築しておく(前提)
- AndroidとPCを同じWi-Fiに接続しておく
- AndroidとPCをUSBで有線接続する
- コマンドプロンプトを起動して「
adb tcpip 5555
」を実行する - AndroidのIPアドレスを調べる
- コマンドプロンプトで「
adb connect 192.xxx.xxx.xxx
」を実行する - 無線接続できたらUSB接続を解除する
- 「scrcpy」を起動する
ワイヤレス接続することでコードなしで快適にAndroidをPC画面上にミラーリングできます。有線接続と変わらずマウスクリックでタップできます。
最初は「いやぁ、いくらワイヤレスでできるとは言え、さすがにUSBの有線接続のほうが安定しているんじゃないの?Wi-Fiなんて動作不安定でカックカクなんじゃないの?」と思っていました。
実際やってみると、確かに有線接続(「CIO 240W CtoC シリコンケーブル」での接続)と同じ設定で接続すると、ところどころラグいシーンはありましたが、思った何倍も快適でした。
僕が有線接続で使っていたのは以下のような最高画質設定だったので、多少落とせばほぼストレスなしで快適でした。
scrcpy --max-size=0 --video-bit-rate=100M --max-fps=120 --video-codec=h265
無線接続だと、いざという時にスマホをすぐ持ち運べるので便利でした。トイレに行く時、台所に持っていく時など、いちいちUSBから取り外す手間が省けます。
scrcpyについて
以下記事を参考にしてください。
scrcpyをワイヤレスで接続する手順
同じWi-Fiに接続しておく
ワイヤレス接続したいAndroidスマホをWindowsと同じWi-Fiに接続しておきます。同じWi-Fi下で使えるものなので、別々だとダメです。
AndroidスマホをPCにUSB接続する
開発者向けオプションを有効にしてUSBデバッグをオンにした上で、AndroidスマホをWindowsにUSB接続します。最初は有線接続です。
転送モードを「充電のみ」から「ファイル転送」にしておきます。

最初はいつもと同じ方法で、あとはscrcpyを起動したらもうミラーリング開始される!ってところまでやるのがポイントです。
もしかしたら開発者向けオプションのワイヤレスデバッグとかをオンにしたらUSB接続一切せずに接続できるかもですが、僕みたいな素人にはちょっと分かりませんでした。
コマンドプロンプトを起動する
Windows11のコマンドプロンプトを起動します。

Androidが接続されているか確認する
やらなくてもいいんですが、ちゃんと接続されているか確認するためにやったほうが理解度が深まります。
コマンドプロンプトに以下を貼り付けて実行します。
adb devices
ADB環境が構築されていて、かつAndroidデバイスがPCに認識されていたら、「List of devices attached」の下に「〇〇 device」と表示されます。

ワイヤレス接続に切り替える
以下を実行します。デフォルトのUSB接続モードから、IPアドレスでのワイヤレス接続に切り替えるためのコマンドです。
adb tcpip 5555
「restarting in TCP mode port: 5555
」と表示されたらOKです。

「error: no devices/emulators found
」とか表示されたら正常にUSB接続されていません。USBデバッグをオンにしているかどうか、ファイル転送モードになっているかどうか…などを確認します。
何も表示されずに二行目が表示されてしまったら、再度同じコマンドを実行するとうまくいくかもです。
「error: more than one device/emulator
」と表示されたら既にデバイスが接続されているからこれ以上は無理だよって意味です。自分では解除していたつもりが、ずっとまだワイヤレスで繋がっていたパターンだと思います。
接続していないのに表示される場合は、一度「adb kill-server
」で接続を全解除して一から試すといいかもです。
スマホのIPアドレスを調べる
Androidスマホ側のIPアドレスを調べます。「192.xxx.xxx.xxx」みたいなやつです。
機種によって書かれている場所が異なりますが、大体、設定→デバイス情報→ステータス→IPアドレスって感じであると思います。

Xiaomiの場合は以下記事を参考にしてみてください。
Windowsのコマンドプロンプト上で以下のADBコマンドを実行することでも調べられます。
adb shell ip addr show wlan0

ポイントですが、ウェブ上でサクッと確認できる「アクセス情報【使用中のIPアドレス確認】」などのサービスで表示されるIPアドレスとは別です。
家庭に割り振られているグローバルIPアドレスなので、ADBのワイヤレス接続には使えません。スマホのプライベートIPアドレスを知る必要があります。
AndroidとPCをワイヤレスでADB接続する
以下のコマンドをコマンドプロンプト上で実行します。「xxx」の部分を皆さんが調べたスマホのプライベートIPアドレスに置き換えてください。
adb connect 192.xxx.xxx.xxx
「connected to 192.xxx.xxx.xxx」と表示されたらOKです。この時点で無事にADBをワイヤレスで接続できています。

ADB接続されているか確認
PCとAndroidのUSB接続を外します。
最近のWindowsはいきなりUSBを取り外しても大丈夫…らしいですが、心配な方はタスクバーのシステムトレイにあるUSBアイコンから「デバイスの取り外し」を実行します。
参考:「デバイスの安全な取り外し」が不要に、ストレージを利用中でなければ大丈夫 | 日経クロステック(xTECH)
しかし、僕の場合、「ADBを使用中のため取り外せませんでした」うんぬんのエラーメッセージが表示されました。ADBを繋いでいるから当然っちゃ当然です。

ADBを切るためには「adb kill-server
」コマンドを実行する必要がありますが、実行するとワイヤレスのADB接続も解除されてしまいます。
ここらへん皆さんどう対処しているのか気になります。
ひとまず僕はAndroid側の転送モードを「ファイル転送」から「充電のみ」に切り替えて抜いています。
ワイヤレス接続されている場合、「adb devices
」を実行した時に「〇〇 device」ではなく「192.xxx.xxx.xxx device」と表示されます。
adb devices

Wi-Fi接続に切り替わっている証拠なのでUSBは抜いてもいい判断ができます。
scrcpyを起動する
ADBをワイヤレスで接続できたらあとは「scrcpy」を起動するのみです。「open_a_terminal_here.bat
」から好みのオプションを実行してもOKです。

専用のコマンドプロンプトが起動して接続が開始されます。「INFO: --> (tcpip) 192.xxx.xxx.xxx
」って感じで表示されます。無事に無線接続でAndroid画面をPC画面上にミラーリングできました。

接続を解除する方法
「scrcpy」ウィンドウを「×」で終了します。

ただ終了しただけだと、ワイヤレス接続しているADBのほうは解除されないのでずっと繋がったままです。
コマンドプロンプトを起動して、以下のコマンドを実行します。USB接続モードに切り替えるコマンドです。
adb usb
「restarting in USB mode」と表示されたらOKです。

念のため接続解除できているか確認するには「adb devices
」を実行します。
adb devices
「192.xxx.xxx.xxx offline」と表示されていたらOKです。オフライン=接続解除できている証拠です。

「adb usb
」はあくまでワイヤレス接続を解除してUSBモードにするって意味なので、ADB自体は終了していません。AndroidをUSBでPCに接続したらすぐにまたscrcpyを使えます。
完全に終了させたい場合は、「adb kill-server
」を実行してADB環境自体終了させます。
adb kill-server
感想
以上、Windows上にAndroidスマホの画面をミラーリングするツール「scrcpy」をワイヤレスで接続する方法でした。
思った以上にワイヤレス接続でも遅延やカクツキがなかったので良かったです。
二点不安なのがWi-Fi接続なので時間帯などによっては遅くなる可能性がある点、無線接続ってセキュリティ的に大丈夫なのか…?な点です。
この記事で利用したアイコン:Android – ソーシャルメディアとロゴ アイコン