Scrcpy 簡介
簡單地來說,Scrcpy就是通過adb調試的方式來將手機屏幕投到電腦上,並可以通過電腦控制您的Android設備。它可以通過USB連接,也可以通過Wifi連接(類似於隔空投屏),而且不需要任何root權限,不需要在手機里安裝任何程序。Scrcpy同時適用於GNU / Linux,Windows和macOS。
Scrcpy主要亮點:
- 亮度(原生,僅顯示設備屏幕)
- 性能(30~60fps)
- 質量(1920×1080或以上)
- 低延遲(35~70ms)
- 啟動時間短(顯示第一張圖像約1秒)
- 非侵入性(設備上沒有安裝任何東西)
此項目為開源項目,Github地址:Genymobile/Scrcpy: Display and control your Android device
使用Scrcpy的要求
adb調試的開啟一般是多次點擊手機系統版本,比如小米手機,系統是MIUI10,開啟方法: “設置”->“我的設備”->“全部參數”->點擊7下MIUI版本,開啟 “開發者選項”。然后在 “設置”->“更多設置”->“開發者選項” 中開啟 USB調試
和 USB調試(安全設置)
。
注意:USB調試(安全設置)
必須開啟,否則不可以使用電腦控制手機,即上述要求的第三條。
使用電腦連接手機
在Android手機中打開了USB調試后,我們即可在電腦中使用adb進行調試。
我使用的是Windows10系統,以下以Windows為例,MacOS或Linux請點擊這里。
程序使用了Java語言,我們需要在電腦中搭建Java運行環境,參考:Windows10 配置 Java 開發環境
首先下載Scrcpy,可去releases
下載最新版本,目前最新版本為v1.10
。
下載地址:https://github.com/Genymobile/Scrcpy/releases
解壓后的目錄:
打開cmd定位到此目錄(在地址欄中輸入cmd
回車),或者將該目錄如D:\Github_Run\Scrcpy-win64-v1.10
加入到系統環境變量中,程序的使用都在cmd命令行中操作。
使用USB進行連接
此方式推薦使用,相對更加流暢。
- 手機通過USB連接到PC上,首次連接會彈出是否信任該電腦,點擊始終信任即可。
- 運行
adb usb
查看是否連接 - 在文件路徑下使用CMD 直接運行
Scrcpy
即可。
- 1
D:\Github_Run\Scrcpy-win64-v1.10>adb usb
- 2
restarting in USB mode
- 3 scrcpy.exe
使用無線連接
可參考官方文檔:Open Source Project - Scrcpy now works wirelessly
此連接方式更加方便快捷,若寬帶速率高,使用效果更佳,使用方法也非常簡單。
- 確保PC和手機在同一Wifi中
- 手機先通過USB與PC相連
- 在PC上運行 adb tcpip 服務端口,如端口為555
- 1
D:\Github_Run\Scrcpy-win64-v1.10>adb tcpip 5555
- 2
restarting in TCP mode port: 5555
- 拔下你的設備,斷開USB連接
- 在PC上運行 adb connect 手機IP:服務端口(手機IP可通過手機的
狀態信息
查看,或者登錄路由器查看,一般以192.168開頭
- 1
D:\Github_Run\Scrcpy-win64-v1.10>adb connect 192.168.0.4:5555
- 2
connected to 192.168.0.4:5555
- 運行Scrcpy,在cmd中輸入
Scrcpy.exe
這樣彈出手機的屏幕,手機投屏成功!正如預期的那樣,性能與USB不同,默認的Scrcpy比特率是8Mbps,這對於Wi-Fi連接來說可能太多了。根據使用情況,降低比特率和分辨率可能是一個很好的折中方案。
- 1 Scrcpy --bit-rate 2M --max-size 800
- 2
# 或者簡寫
- 3
Scrcpy -b2M -m800
若要切換回USB模式:adb usb
常用快捷鍵(重要)
描述 | 快捷鍵 |
---|---|
切換全屏模式 | Ctrl+f |
點擊手機電源 | Ctrl+p |
返回 | Ctrl+b |
返回到HOME | Ctrl+h |
多任務 | Ctrl+s |
更多操作 | 長按鼠標左鍵 |
顯示最佳窗口 | Ctrl+g |
調節音量 | Ctrl+上下鍵 |
關閉設備屏幕(保持鏡像) | Ctrl+o |
將設備剪貼板復制到計算機 | Ctrl+c |
將計算機剪貼板粘貼到設備 | Ctrl+v |
Tips:查看已連接設備命令adb devices
,顯示device
則表示已連接,顯示offline
則離線: