Debian sid amd64環境ではパッケージがあるので簡単です,armhf/amd64/i386環境ではsnap版が存在します.その他幾つかのLinuxディストリビューションではパッケージがあったり,WindowsやmacOSでも動作するようです.
手元ではDebian sid amd64で動作しました.(Raspberry Pi OS armhfにsnap版を入れた環境ではエラーが発生.内容は未だ未確認)
Debian sid amd64環境だと以下のような感じで導入できました.このときAndroid端末は「開発者向けオプション」が有効になっていて,「USBデバッグ」が有効になっている状態でUSB接続されている必要があります.
$ sudo apt install adb scrcpy (1) $ lsusb (2) : Bus 002 Device 013: ID 05c6:9024 Qualcomm, Inc. SDM439-MTP _SN:472BF8D8 : $ echo 'SUBSYSTEM=="usb", ATTR{idVendor}=="05c6" ATTR{idProduct}=="9024", MODE="0660", GROUP="plugdev", SYMLINK+="android%n"' \ | sudo tee -a /etc/udev/rules.d/51-android.rules (3) $ sudo udevadm control --reload (4) $ adb devices (5) * daemon not running; starting now at tcp:5037 * daemon started successfully List of devices attached 976d6a56 device
- 必要パッケージの導入
- AndroidのVID/PIDを確認(ここでは
05c6:9024
) - adbコマンドが利用できるようにAndroid端末をudev roureに登録
- udev ruleを反映する
- adbコマンドで認識出来るのを確認
この状態で,scrcpy
を実行することでAndroidの画面転送が出来ました.普通に操作も出来ます.
スリープ状態のときは画面が真っ黒ですが,マウス右クリックで解除されます.
$ scrcpy INFO: scrcpy 1.14 <https://github.com/Genymobile/scrcpy> /usr/share/scrcpy/s...93 bytes in 0.008s) [server] INFO: Device: TINNO C330 (Android 9) INFO: OpenGL shaders: ENABLED INFO: Created renderer: opengl INFO: Renderer: opengl INFO: OpenGL version: 3.0 Mesa 20.2.4 INFO: Trilinear filtering enabled INFO: Initial texture: 720x1280
導入も簡単だしこれは便利.しかしメイン端末ではPCにUSB接続するとすぐに充電しなくなってしまうので長時間は使えません.
adb
のワイヤレス接続の設定をすると別の端末や充電器で充電しながら利用できそうなので試してみました.
対象のAndroid端末をPCにUSB接続した状態で tcpip
コマンドでリモート接続できるようにします.
$ adb tcpip 5555 restarting in TCP mode port: 5555
この状態でPCからAndroid端末を取り外し,Wi-Fi接続のIPアドレスを確認します.
PCでadbコマンドでAndroid端末に接続します.
$ adb connect <ANDROID_IP>>:5555
この状態で scrcpy
コマンドを実行すると画面が表示され操作できます.充電器などに接続した状態でも利用できます :)
scrcpy
には幾つかオプションがあります.便利そうなものとしては最大解像度を指定する -m, --max-size value
で解像度を下げて表示できます,
-n, --no-control
で表示だけで操作できなくします.
-r, --record file
で画面を録画します.
-w, --stay-awake
でscrcpyを実行中Android画面をロック,消灯しません.
-S, --turn-screen-off
Android端末のスクリーンを消したまま操作できます.
ショートカットでは
Ctrl + h
, マウス中キー
でホームボタン,
Ctrl + r
でAndroid画面回転,
Ctrl + s
でアプリケーション切り替え,
辺りが便利そうです,
Ctrl + c
でクリップボードのコピーなのですが,一旦Android側でコピーした後に Ctrl + c
でPCへのクリップボードコピーのようです,Ctrl + v
の貼り付けもAndroid感での貼り付けで,PCからAndroidのクリップボード貼り付けは Ctrl + Shift + v
でした.
詳細は scrcpy --help
を参照してください.
これでElectronアプリでPCで動かしているアプリをスマホで……とも思ったのですが日本語入力などはちょっと面倒.もう少し様子見しようと思います.
「PCでAndroid端末の画面転送と操作が出来るscrcpy」への3件のフィードバック