Scrcpy - 基礎(chǔ)使用

Scrcpy

這個應(yīng)用程序提供了USB(或TCP/IP)上連接的Android設(shè)備的顯示和控制。它不需要任何根訪問篮赢,它適用于GNU/Linux炬太、Windows和macOS

它專注于:

  1. 精致 (本機(jī)魂务,僅顯示設(shè)備屏幕)
  2. 性能 (30 ~ 60 fps)
  3. 質(zhì)量 (1920 × 1080或以上)
  4. 低延遲 (35 ~ 70毫秒)
  5. 快速啟動 (顯示第一張圖片約1秒)
  6. 非侵入性 (不在設(shè)備上安裝任何軟件)

需求

Android設(shè)備至少需要API 21 (Android 5.0)

確保在設(shè)備上啟用adb調(diào)試

在某些設(shè)備上炎疆,還需要啟用一個附加選項來使用鍵盤和鼠標(biāo)控制它

獲取

Linux

關(guān)于Debian和Ubuntu (20.04)

apt install scrcpy

也可以自己編譯

Windows

對于Windows,為了簡單起見勾拉,可以使用預(yù)構(gòu)建的存檔煮甥,其中包含所有依賴項(包括adb)

scrcpy-win64-v1.14.zip

也可以使用Chocolatey進(jìn)行安裝

choco install scrcpy
choco install adb # 如果你還沒有

Scoop

scoop install scrcpy
scoop install adb # 如果你還沒有

macOS

該應(yīng)用程序可以在Homebrew中使用,可以直接安裝它

brew install scrcpy

您需要ADB藕赞,并且可以從系統(tǒng)路徑PATH訪問它成肘,如果你還沒有

brew cask install android-platform-tools

運(yùn)行

插入一個Android設(shè)備,然后執(zhí)行

scrcpy

它接受命令行參數(shù)

scrcpy --help

特性

獲取配置

減少尺寸

有時斧蜕,將Android設(shè)備鏡像成低分辨率是很有用的艇劫,可以提高性能

將寬度和高度限制為某個值 (例如1024)

scrcpy --max-size 1024
scrcpy -m 1024  # 短的版本

計算另外一邊以保證設(shè)備的高寬比被保留,例如 1920×1080的設(shè)備鏡像為1024×576

改變碼率

默認(rèn)的比特率是8mbps惩激,改變視頻比特率 (例如:2mbps)

scrcpy --bit-rate 2M
scrcpy -b 2M  # 短的版本

限制幀率

捕獲幀速率可以被限制

scrcpy --max-fps 15

這是Android 10以來的官方支持店煞,但在更早的版本上可能也可以工作

裁切

設(shè)備屏幕可以裁剪成只反映屏幕的一部分

這是有用的,例如反映只有一只眼睛的虛擬現(xiàn)實(shí)眼鏡

scrcpy --crop 1224:1440:0:0   # 1224x1440 偏移量 (0,0)

如果--max-size也指定了风钻,則在裁剪之后應(yīng)用調(diào)整大小

鎖定視頻方向

鎖定鏡像的方向

scrcpy --lock-video-orientation 0   # 自然方向
scrcpy --lock-video-orientation 1   # 逆時針90°
scrcpy --lock-video-orientation 2   # 180°
scrcpy --lock-video-orientation 3   # 順時針90°

這會影響錄制方向

錄屏

可以在鏡像時錄屏

scrcpy --record file.mp4
scrcpy -r file.mkv

在錄屏?xí)r禁用鏡像

scrcpy --no-display --record file.mp4
scrcpy -Nr file.mkv
# 用Ctrl+C中斷錄制

“跳過的幀”被記錄顷蟀,即使它們沒有實(shí)時顯示(出于性能原因)

幀是設(shè)備上的時間戳,因此包延遲變化不會影響記錄的文件

連接

無線

Scrcpy使用adb與設(shè)備通信骡技,adb可以通過TCP/IP連接到設(shè)備

  1. 將設(shè)備連接到與計算機(jī)相同的Wi-Fi
  2. 獲取設(shè)備IP地址(設(shè)置→關(guān)于手機(jī)→狀態(tài))
  3. 在設(shè)備上通過TCP/IP啟用adb adb tcpip 5555
  4. 拔掉設(shè)備
  5. 連接到您的設(shè)備 adb connect DEVICE_IP:5555 鸣个,其中DEVICE_IP為設(shè)備ip地址
  6. 像往常一樣運(yùn)行scrcpy

減少比特率可能會有用

scrcpy --bit-rate 2M --max-size 800
scrcpy -b2M -m800  # 短的版本

多設(shè)備

如果adb設(shè)備中列出了多個設(shè)備羞反,則必須指定序列

scrcpy --serial 0123456789abcdef
scrcpy -s 0123456789abcdef  # 短的版本

如果設(shè)備通過TCP/IP連接

scrcpy --serial 192.168.0.1:5555
scrcpy -s 192.168.0.1:5555  # 短的版本

可以為多個設(shè)備啟動多個scrcpy實(shí)例

SSH隧道

要連接到遠(yuǎn)程設(shè)備,可以將本地adb客戶機(jī)連接到遠(yuǎn)程adb服務(wù)器 (前提是它們使用相同版本的adb協(xié)議)

adb kill-server    # 在5037端口上關(guān)閉本地adb服務(wù)器
ssh -CN -L5037:localhost:5037 -R27183:localhost:27183 your_remote_computer
# 保持開放

從另一個終端

scrcpy

為了避免啟用遠(yuǎn)程端口轉(zhuǎn)發(fā)囤萤,可以強(qiáng)制一個轉(zhuǎn)發(fā)連接 (注意 -L 而不是 -R )

adb kill-server    # 在5037端口上關(guān)閉本地adb服務(wù)器
ssh -CN -L5037:localhost:5037 -L27183:localhost:27183 your_remote_computer
# 保持開放

從另一個終端

scrcpy --force-adb-forwrad

就像無線連接一樣昼窗,降低視頻質(zhì)量或許會更好用

scrcpy -b2M -m800 --max-fps 15

窗口配置

標(biāo)題

默認(rèn)情況下,窗口標(biāo)題是設(shè)備模型涛舍,它是可以改變的

scrcpy --window-title 'My device'

位置和大小

可以指定初始窗口位置和大小

scrcpy --window-x 100 --window-y 100 --window-width 800 --window-height 600

無邊界

禁用窗口裝飾

scrcpy --window-borderless

總是置頂

保持scrcpy窗口總是在頂部

scrcpy --always-on-top

全屏

應(yīng)用程序可以直接在全屏啟動

scrcpy --fullscreen
scrcpy -f  # 短的版本

然后可以用 ctrl + f 動態(tài)切換全屏

旋轉(zhuǎn)

窗口可以旋轉(zhuǎn)

scrcpy --rotation 1
  • 0: 不旋轉(zhuǎn)
  • 1: 逆時針旋轉(zhuǎn)90度
  • 2: 旋轉(zhuǎn)180度
  • 3: 順時針旋轉(zhuǎn)90度

還可以通過 Ctrl + ←Ctrl + → 動態(tài)更改旋轉(zhuǎn)

其他鏡像選項

只讀

禁用控件 (可以與設(shè)備交互的所有東西澄惊,如輸入鍵、鼠標(biāo)事件富雅、拖放文件)

scrcpy --no-control
scrcpy -n

顯示

如果有多個顯示器可用掸驱,可以選擇要鏡像的顯示器

scrcpy --display 1

可以檢索顯示id列表

adb shell dumpsys display   # 在輸出中查找我的顯示id

只有當(dāng)設(shè)備至少運(yùn)行Android 10時才能控制輔助顯示(否則以只讀方式鏡像)

關(guān)閉屏幕

可以使用命令行選項關(guān)閉設(shè)備屏幕

scrcpy --turn-screen-off
scrcpy -S

或在任何時候按 Ctrl + o

Ctrl + Shift + o (或者 POWER, Ctrl + p) 恢復(fù)

它還可以防止設(shè)備休眠

scrcpy --turn-screen-off --stay-awake
scrcpy -Sw

顯示觸摸

對于演示,顯示物理觸摸(在物理設(shè)備上)可能很有用

Scrcpy提供了一個選項來在啟動時啟用該特性没佑,并在退出時恢復(fù)初始值

scrcpy --show-touches
scrcpy -t

輸入控制

旋轉(zhuǎn)設(shè)備的屏幕

Ctrl + r 在縱向和橫向模式之間切換

注意毕贼,它只在前臺應(yīng)用程序支持所請求的方向時才旋轉(zhuǎn)

復(fù)制粘貼

可以在計算機(jī)和設(shè)備之間雙向同步剪貼板

  • Ctrl + c 將設(shè)備剪貼板復(fù)制到計算機(jī)剪貼板
  • Ctrl + Shift + v 將電腦剪貼板復(fù)制到設(shè)備剪貼板(如果設(shè)備運(yùn)行Android >= 7則粘貼)
  • Ctrl + v 將計算機(jī)剪貼板粘貼為文本事件序列

此外,每當(dāng)Android剪貼板發(fā)生變化時蛤奢,它都會自動同步到計算機(jī)剪貼板

文件拖動

安裝APK

要安裝APK鬼癣,請將APK文件(以.apk結(jié)尾)拖放到scrcpy窗口

推送文件到設(shè)備

要將文件推送到設(shè)備上的 /sdcard/,請將一個(非apk)文件拖放到scrcpy窗口

目標(biāo)目錄可以在啟動時更改

scrcpy --push-target /sdcard/foo/bar/

快捷鍵

Action 快捷鍵 快捷鍵 (macOS)
切換全屏模式 Ctrl+f Cmd+f
向左旋轉(zhuǎn)屏幕 Ctrl+ (left) Cmd+ (left)
向右旋轉(zhuǎn)屏幕 Ctrl+ (right) Cmd+ (right)
將窗口大小調(diào)整為1:1 Ctrl+g Cmd+g
調(diào)整窗口大小以移除黑色邊框 Ctrl+x | Double-click1 Cmd+x | Double-click1
點(diǎn)擊 HOME Ctrl+h | Middle-click Ctrl+h | Middle-click
點(diǎn)擊 BACK Ctrl+b | Right-click2 Cmd+b | Right-click2
點(diǎn)擊 APP_SWITCH Ctrl+s Cmd+s
點(diǎn)擊 MENU Ctrl+m Ctrl+m
點(diǎn)擊 VOLUME_UP Ctrl+ (up) Cmd+ (up)
點(diǎn)擊 VOLUME_DOWN Ctrl+ (down) Cmd+ (down)
點(diǎn)擊 POWER Ctrl+p Cmd+p
開機(jī) Right-click2 Right-click2
關(guān)閉設(shè)備屏幕 Ctrl+o Cmd+o
點(diǎn)亮設(shè)備屏幕 Ctrl+Shift+o Cmd+Shift+o
旋轉(zhuǎn)設(shè)備屏幕 Ctrl+r Cmd+r
展開通知面板 Ctrl+n Cmd+n
折疊通知面板 Ctrl+Shift+n Cmd+Shift+n
將設(shè)備剪貼板復(fù)制到計算機(jī) Ctrl+c Cmd+c
將電腦剪貼板粘貼到設(shè)備上 Ctrl+v Cmd+v
將計算機(jī)剪貼板復(fù)制到設(shè)備并粘貼 Ctrl+Shift+v Cmd+Shift+v
啟用/禁用幀率顯示 Ctrl+i Cmd+i

自定義路徑

要使用特定的adb二進(jìn)制文件啤贩,在環(huán)境變量adb中配置其路徑

ADB=/path/to/adb scrcpy

要覆蓋scrcpy-server文件的路徑待秃,需要在SCRCPY_SERVER_PATH中配置它的路徑

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市瓜晤,隨后出現(xiàn)的幾起案子锥余,更是在濱河造成了極大的恐慌腹纳,老刑警劉巖痢掠,帶你破解...
    沈念sama閱讀 222,464評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異嘲恍,居然都是意外死亡足画,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,033評論 3 399
  • 文/潘曉璐 我一進(jìn)店門佃牛,熙熙樓的掌柜王于貴愁眉苦臉地迎上來淹辞,“玉大人,你說我怎么就攤上這事俘侠∠笞海” “怎么了?”我有些...
    開封第一講書人閱讀 169,078評論 0 362
  • 文/不壞的土叔 我叫張陵爷速,是天一觀的道長央星。 經(jīng)常有香客問我,道長惫东,這世上最難降的妖魔是什么莉给? 我笑而不...
    開封第一講書人閱讀 59,979評論 1 299
  • 正文 為了忘掉前任毙石,我火速辦了婚禮,結(jié)果婚禮上颓遏,老公的妹妹穿的比我還像新娘徐矩。我一直安慰自己,他們只是感情好叁幢,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,001評論 6 398
  • 文/花漫 我一把揭開白布滤灯。 她就那樣靜靜地躺著,像睡著了一般遥皂。 火紅的嫁衣襯著肌膚如雪力喷。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,584評論 1 312
  • 那天演训,我揣著相機(jī)與錄音弟孟,去河邊找鬼。 笑死样悟,一個胖子當(dāng)著我的面吹牛拂募,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播窟她,決...
    沈念sama閱讀 41,085評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼陈症,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了震糖?” 一聲冷哼從身側(cè)響起录肯,我...
    開封第一講書人閱讀 40,023評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎吊说,沒想到半個月后论咏,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,555評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡颁井,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,626評論 3 342
  • 正文 我和宋清朗相戀三年厅贪,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片雅宾。...
    茶點(diǎn)故事閱讀 40,769評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡养涮,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出眉抬,到底是詐尸還是另有隱情贯吓,我是刑警寧澤,帶...
    沈念sama閱讀 36,439評論 5 351
  • 正文 年R本政府宣布蜀变,位于F島的核電站悄谐,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏昏苏。R本人自食惡果不足惜尊沸,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,115評論 3 335
  • 文/蒙蒙 一威沫、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧洼专,春花似錦棒掠、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,601評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至蜡镶,卻和暖如春雾袱,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背官还。 一陣腳步聲響...
    開封第一講書人閱讀 33,702評論 1 274
  • 我被黑心中介騙來泰國打工芹橡, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人望伦。 一個月前我還...
    沈念sama閱讀 49,191評論 3 378
  • 正文 我出身青樓林说,卻偏偏與公主長得像,于是被迫代替她去往敵國和親屯伞。 傳聞我的和親對象是個殘疾皇子腿箩,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,781評論 2 361