はじめに
scrcpy は Android 端末をミラーリング、画面操作をUSBまたはTCP/IP経由で行うアプリケーションです。Windows・Linux・Macで利用できるアプリケーションなので全てのAndroid開発環境で利用できます。scrcpy はかなり便利なツールでバグも少ないのですが次の問題があったので解決方法を共有します。
問題
解像度が 1920x1200 のを scrcpy でミラーリングすると、なぜか 1920x1080 の解像度でミラーリングされ画面が見切れて表示されてしまう。本来であれば scrcpy ではタップ操作もサポートしているが、この状態になるとタップ操作もできなくなる。
$ scrcpy
2020-10-09 15:40:18.220 scrcpy[7021:244757] INFO: scrcpy 1.10 <https://github.com/Genymobile/scrcpy>
/usr/local/Cellar/scrcpy/1.10/share/scrcpy/scrcpy-server.jar: 1 file pushed. 1.3 MB/s (22662 bytes in 0.017s)
2020-10-09 15:40:19.995 scrcpy[7021:244757] INFO: Initial texture: 1920x1200
2020-10-09 15:40:20.488 scrcpy[7021:244757] INFO: New texture: 1920x1080
※ 画面下部のナビゲーションバーとボタンが切れて表示されてしまっている。
解決方法
scrcpy でミラーリングする際に 1280x800 の解像度で小さく表示するようにしてやる。ミラーリングの解像度は -m オプションで設定できるようになっています。なので次のように -m オプションを設定してやると見きれずに表示してくれます。また -m オプションを設定することでタッチ操作も正常に動作するようになります。
$ scrcpy -m 1280
2020-10-09 15:52:08.956 scrcpy[7177:254315] INFO: scrcpy 1.10 <https://github.com/Genymobile/scrcpy>
/usr/local/Cellar/scrcpy/1.10/share/sc...shed. 2.0 MB/s (22662 bytes in 0.011s)
2020-10-09 15:52:09.897 scrcpy[7177:254315] INFO: Initial texture: 1280x800
※ 画面下部のナビゲーションバーとボタンが切れずに表示できている。
おわりに
scrcpy は便利なツールで殆どの端末で正常に動作するのですが、稀に手く動作しない端末があるみたいです。動作しない端末に遭遇した場合は本記事で紹介した解決方法を試してみると良いかなと思います。