scrcpy je bezplatná aplikace s otevřeným zdrojovým kódem pro prohlížení a ovládání zařízení Android připojených přes USB (nebo bezdrátově, ale s nižším výkonem) z plochy Linux, Windows nebo macOS.
Vyžaduje alespoň Android 5.0 a povolené ladění ADB na zařízení Android. Není vyžadován přístup root.
Scrcpy se zaměřuje na lehkost, výkon a kvalitu a nabízí 30 ~ 60 FPS s rozlišením 1920×1080 nebo více . Má také jednu krátkou čekací dobu někde mezi 70 a 100 ms. Musím říct, že výkon scrcpy mě překvapil, když jsem to poprvé vyzkoušel, skoro jsem měl pocit, jako bych měl zařízení Android v ruce a nepoužíval ho ze svého stolního počítače se systémem Linux.
Komunikace mezi serverem (v tomto případě Android zařízení) a klientem (stolním počítačem) probíhá přes socket přes ADB tunel. Server streamuje video H.264 z obrazovky zařízení a předává je klientovi k dekódování a zobrazení. bez ukládání do vyrovnávací paměti pro minimalizaci latence . Události myši a klávesnice jsou zachyceny a přeneseny na server, který je vloží do zařízení Android.
Charakteristika:
- Ovládejte zařízení Android z počítače (pomocí myši a klávesnice) v systému Linux, Windows nebo macOS
- Funguje přes USB nebo WiFi (ačkoli výkon se při použití přes WiFi sníží)
- Umožňuje nahrávat obrazovku Androidu při zrcadlení
- Je možné omezit šířku a výšku rozlišení zrcadlení Android
- Umožňuje změnit přenosovou rychlost videa
- Obrazovku zařízení lze oříznout
- Lze zrcadlit více zařízení současně
- Aplikaci scrcpy lze spustit přímo v režimu celé obrazovky
- U prezentací může scrcpy zobrazovat fyzické dotyky na zařízení Android (pouze fyzické dotyky, s prstem na zařízení!)
- Nainstalujte soubor APK přetažením do okna Scrcpy nebo přenesením souboru do zařízení
/sdcard
přetažením souboru, který není APK - Režim pouze pro čtení pro zakázání interakce se vstupními klávesami, událostmi myši a přetažením
Přesměrování zvuku nefunguje, protože se jedná o omezení protokolu Android Open Accessory Protocol.
Pokud máte pocit, že kvalita není nejlepší (například písma nebo přechody), je to pravděpodobně proto, že je obrazovka oddálená. Přepněte zařízení Android do režimu na šířku a spusťte scrcpy v režimu celé obrazovky (Ctrl + F
) pro lepší kvalitu.
Za zmínku také stojí, že název „scrcpy“ pochází z „kopie obrazovky“. To by mělo usnadnit zapamatování ?️.
scrcpy lze stáhnout z https://github.com/Genymobile/scrcpy, vývojáři nabízejí předkompilované binární soubory pro Microsoft Windows a homebrew balíček pro macOS. K dispozici je také balíček Arch Linux GOLD a gentoo Ebuild.
Související se systémem Android:
- Anbox:Jak snadno nainstalovat Obchod Google Play a povolit podporu ARM (libhoudini)
- Integrujte svůj telefon Android s Gnome Shell bez závislostí KDE pomocí GSConnect
Nainstalujte scrcpy na Ubuntu, Fedoru, Debian nebo Linux Mint
[[Edit]]scrcpy je nyní součástí oficiálního Pop! _OS / Ubuntu 20.04, 20.10 a 21.04 (a Linux Mint 20.x) a také v Debian Sid (ale nemusí to být nejnovější verze). Nainstalujte jej pomocí:
sudo apt install scrcpy
[[Edit]]scrcpy lze nyní použít s a. nainstalovaný v repozitáři Fedora Copr. Přidejte a nainstalujte úložiště následovně: sudo dnf copr enable zeno/scrcpy
sudo dnf install scrcpy
Následující pokyny platí pro vytváření scrcpy a instalaci ze zdrojového kódu na Debian / Ubuntu / Linux Mint a Fedora. Tímto způsobem můžete nainstalovat nejnovější verzi bez ohledu na to, jakou verzi Debian/Ubuntu/Linux Mint nebo Fedory používáte. Oficiální návod na sestavení scrcpy pro Linux mi přišel trochu matoucí, tak jsem se rozhodl je usnadnit. V obchodě Snap Store je k dispozici nový, neoficiální jeden scrcpy snapový balíček, Vyzkoušel jsem následující kroky a scrcpy se na Ubuntu 18.10 a 18.04 a také na Fedoře 29. Protože Ubuntu je založeno na Debianu a Linux Mint je založen na Ubuntu, mělo by fungovat i na těchto a dalších distribucích Linuxu založených na Debianu nebo Ubuntu .
1. Nainstalujte závislosti potřebné k sestavení a spuštění scrcpy v systémech Debian, Ubuntu a Linux Mint nebo Fedora.
- Debian, Ubuntu nebo Linux Mint :
sudo apt install adb ffmpeg libsdl2-2.0-0 make gcc pkg-config meson ninja-build libavcodec-dev libavformat-dev libavutil-dev libsdl2-dev
- Fedora (první příkaz aktivuje úložiště RPMFusion – přeskočte, pokud je již na vašem počítači Fedora povoleno):
sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install android-tools ffmpeg SDL2-devel ffms2-devel meson gcc make
Stojí za zmínku, že je vyžadován Meson 0.37 nebo novější (pokud používáte Ubuntu 16.04, povolte úložiště Backports, abyste mohli nainstalovat novější verzi Meson). Na rozdíl od oficiálních instrukcí pro sestavení není OpenJDK součástí mé příručky, protože používá předkompilovaný scrcpy-server-jar, aby bylo vše jednodušší.
Toto jsou jediné instrukce specifické pro distro. Pokud tedy víte, jak nainstalovat tyto závislosti (které mohou mít různé názvy v závislosti na distribuci Linuxu, kterou používáte) pro jinou distribuci Linuxu, ostatní kroky by měly být stejné.
2. Stáhněte a nainstalujte scrcpy server JAR.
Stáhněte si nejnovější scrcpy-server-v*.jar
na stránce Sdílení aplikací a vložte ji do své domovské složky. Pokud soubor neobsahuje .jar
Rozšíření, přejmenujte jej a přidejte sami.
Dále jej nainstalujte na /usr/local/bin
(ačkoli se také instaluje v /usr/local/share/scrcpy
, z nějakého důvodu to scrcpy hledá v /usr/local/bin
):
sudo install scrcpy-server-v*.jar /usr/local/bin/scrcpy-server.jar
3. Stáhněte si zdrojový kód nejnovější verze scrcpy a rozbalte jej do své domovské složky.
Stáhněte si zdrojový kód scrcpy (.tar.gz
Archive) ze stránky verzí aplikace a extrahujte ji do složky ve vašem domovském adresáři s názvem scrcpy
(Odeberte číslo verze z názvu složky scrcpy – usnadníte si tím použití těchto pokynů s budoucími verzemi scrcpy).
Domovská složka by nyní měla obsahovat soubor s názvem. mít scrcpy-server-v*.jar
(např. scrcpy-server-v1.17.jar
pro scrcpy v1.17) a složku nazvanou scrcpy
.
4. Sestavte a nainstalujte scrcpy.
Chcete-li vytvořit scrcpy, přejděte do složky scrcpy, vytvořte aplikaci a nainstalujte ji:
cd scrcpy
meson build --buildtype release --strip -Db_lto=true -Dprebuilt_server=../scrcpy-server-v1.17.jar
cd build
ninja
sudo ninja install
Pokud instalujete jinou verzi scrcpy, nahraďte scrcpy-server-v1.17.jar
z druhého příkazu s přesným názvem souboru, který obsahuje verzi, kterou instalujete.
Nyní můžete odstranit složku scrcpy ze svého domovského adresáře, pokud chcete.
Jak používat scrcpy v systému Linux k ovládání zařízení Android z plochy Linuxu (nebo záznamu jeho obrazovky)
Zmínil jsem to na začátku článku, ale myslím, že bych to měl zopakovat. K ovládání pomocí scrcpy z plochy potřebujete zařízení s Androidem 5.0 nebo novějším. Také se ujistěte, že máte na svém zařízení Android povoleno ladění ADB. Na některých zařízeních možná budete muset aktivovat další „ladění USB (nastavení zabezpečení)“. možnost ovládat zařízení Android ze stolního počítače.
Chcete-li použít scrcpy, připojte zařízení Android k počítači přes USB a poté spusťte scrcpy v terminálu:
scrcpy
Pokud jste neautorizovali aktuální počítač se svým zařízením Android pomocí adb, při prvním spuštění scrcpy se ujistěte, že je obrazovka zařízení Android odemčená a že jste autorizovali scrcpy (klikněte na OK
na zařízení Android, když budete požádáni o autorizaci)!
Za zmínku také stojí, že v mém případě na počítači, na kterém jsem předtím nespouštěl adb, jsem musel spustit scrcpy třikrát, než to fungovalo (pravděpodobně nečeká dostatečně na autorizaci), takže možná chcete? udělejte to, i když to hned nefunguje:
example@unixlinux.online:~$ scrcpy
* daemon not running. starting it now on port 5037 *
free(): invalid next size (fast)
ADB server didn't ACK
* failed to start daemon *
adb: error: connect failed: cannot connect to daemon
ERROR: "adb push" returned with value 1
example@unixlinux.online:~$ scrcpy
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
adb: error: connect failed: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.
ERROR: "adb push" returned with value 1
example@unixlinux.online:~$ scrcpy
[100%] /data/local/tmp/scrcpy-server.jar
INFO: Initial texture: 1440x2560
Chtěli byste nahrávat obrazovku Android a přitom ovládat zařízení Android z plochy (klávesnicí a myší)? Spusťte scrcpy s --record
následovaný názvem souboru, který má být zahrnut, s příponou mkv nebo mp4. Například:
scrcpy --record file.mp4
Možná vás zajímá Jak se vrátit na předchozí obrazovku na zařízení Android, když jej ovládáte z plochy, přejít na domovskou obrazovku nebo použít přepínač aplikací pro zařízení s fyzickými tlačítky – můžete použít několik připojení:
- myš
right-click
neboCtrl + b
(neboCtrl + Backspace
) pro ZPĚT - myš
middle-click
neboCtrl + h
(neboHome
klíč) pro HOME -
Ctrl + s
pro přepínač aplikací
Informace o bezdrátovém ovládání zařízení Android z plochy naleznete v podrobných pokynech na stránce projektu aplikace. Podívejte se také na stránku scrcpy pro pokročilé použití, jako je zmenšení velikosti zrcadlené obrazovky, změna přenosové rychlosti, oříznutí obrazovky nebo spuštění více instancí scrcpy na více zařízeních Android.
Jak odinstalovat scrcpy (nainstalované ze zdroje)
Uživatelé, kteří chtějí odstranit scrcpy ze zdroje (pomocí pokynů v tomto článku), mohou spustit tyto dva příkazy:
sudo rm /usr/local/share/scrcpy/scrcpy-server.jar
sudo rm /usr/local/bin/scrcpy-server.jar
sudo rm /usr/local/bin/scrcpy