GNU/Linux >> Tutoriales Linux >  >> Debian

Controle dispositivos Android desde un escritorio con scrcpy (instalación de Ubuntu, Fedora, Debian, Linux Mint)

scrcpy es una aplicación gratuita de código abierto para ver y controlar dispositivos Android conectados a través de USB (o de forma inalámbrica, pero con menor rendimiento) desde un escritorio Linux, Windows o macOS.

Requiere al menos Android 5.0 y depuración ADB habilitada en el dispositivo Android. No se requiere acceso raíz.

Enfocado en la ligereza, el rendimiento y la calidad, scrcpy ofrece 30 ~ 60 FPS con una resolución de 1920×1080 o más . También tiene un tiempo de espera corto , en algún lugar entre 70 y 100 ms. Debo decir que el rendimiento de scrcpy me sorprendió la primera vez que lo probé, casi me sentí como si tuviera el dispositivo Android en la mano y no lo usara desde mi computadora de escritorio con Linux.

La comunicación entre el servidor (en este caso dispositivo Android) y el cliente (ordenador de escritorio) se realiza a través de un socket a través de un túnel ADB. El servidor transmite video H.264 de la pantalla del dispositivo y lo pasa al cliente para decodificarlo y mostrarlo. sin almacenamiento en búfer para minimizar la latencia . Los eventos del mouse y del teclado se capturan y transmiten al servidor, que los inyecta en el dispositivo Android.

Características:

  • Controle dispositivos Android desde un escritorio (con mouse y teclado) bajo Linux, Windows o macOS
  • Funciona a través de USB o Wi-Fi (aunque el rendimiento disminuirá cuando se use a través de Wi-Fi)
  • Le permite grabar la pantalla de Android mientras se refleja
  • Es posible limitar el ancho y alto de la resolución del espejo de Android
  • Le permite cambiar la tasa de bits del video
  • La pantalla del dispositivo se puede recortar
  • Puede duplicar varios dispositivos al mismo tiempo
  • La aplicación scrcpy se puede iniciar directamente en modo de pantalla completa
  • Para presentaciones, scrcpy puede mostrar toques físicos en el dispositivo Android (¡solo toques físicos, con el dedo en el dispositivo!)
  • Instale APK arrastrándolo y soltándolo en la ventana Scrcpy o transfiriendo un archivo al dispositivo /sdcard arrastrando y soltando un archivo que no sea APK
  • Modo de solo lectura para deshabilitar la interacción con teclas de entrada, eventos del mouse y arrastrar y soltar


El reenvío de audio no funciona ya que es una limitación del Protocolo abierto de accesorios de Android.

Si siente que la calidad no es la mejor (como fuentes o degradados), lo más probable es que la pantalla esté alejada. Cambie el dispositivo Android al modo horizontal y ejecute scrcpy en modo de pantalla completa (Ctrl + F ) para una mejor calidad.

También vale la pena señalar que el nombre "scrcpy" proviene de "copia de pantalla". Esto debería hacer que sea más fácil de recordar ?️.

scrcpy se puede descargar desde https://github.com/Genymobile/scrcpy, los desarrolladores ofrecen binarios precompilados para Microsoft Windows y un paquete homebrew para macOS. También hay disponible un paquete GOLD de Arch Linux y un Ebuild de gentoo.

Relacionado con Android:

  • Anbox:cómo instalar Google Play Store y habilitar la compatibilidad con ARM (libhoudini) de forma fácil
  • Integre su teléfono Android con Gnome Shell sin dependencias de KDE con GSConnect

Instalar scrcpy en Ubuntu, Fedora, Debian o Linux Mint

[[Edit]]scrcpy ahora está incluido en el Pop oficial! _Repositorios OS/Ubuntu 20.04, 20.10 y 21.04 (y Linux Mint 20.x), así como en Debian Sid (pero puede que no sea la última versión). Instalarlo con:

sudo apt install scrcpy
[[Editar]]scrcpy ahora se puede usar con a. instalado en el repositorio de Fedora Copr. Agregue e instale el repositorio de la siguiente manera:
sudo dnf copr enable zeno/scrcpy
sudo dnf install scrcpy
Las siguientes instrucciones se aplican a la creación de scrcpy y la instalación desde el código fuente en Debian/Ubuntu/Linux Mint y Fedora. De esta manera, puede instalar la última versión sin importar qué versión de Debian/Ubuntu/Linux Mint o Fedora esté utilizando.

Encontré las instrucciones de compilación oficiales de scrcpy para Linux un poco confusas, así que decidí hacerlas más fáciles. Hay un paquete nuevo, no oficial, scrcpy snap, disponible en Snap Store, pero no funcionó en mi escritorio Ubuntu 18.10, por lo que probablemente tenga más trabajo por hacer . El paquete scrcpy ya está funcionando, por lo que es más fácil instalar la aplicación usando el paquete scrcpy snap.

Probé los siguientes pasos y me arreglé en Ubuntu 18.10 y 18.04, así como en Fedora 29. Dado que Ubuntu se basa en Debian y Linux Mint se basa en Ubuntu, también debería funcionar en estas y otras distribuciones de Linux basadas en Debian o Ubuntu. .

1. Instale las dependencias necesarias para compilar y ejecutar scrcpy en Debian, Ubuntu y Linux Mint o Fedora.

  • Debian, Ubuntu o 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 (el primer comando habilita el repositorio RPMFusion; omita si ya está habilitado en su máquina Fedora):
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

Vale la pena señalar que se requiere Meson 0.37 o posterior (si está usando Ubuntu 16.04, habilite el repositorio Backports para poder instalar una versión más nueva de Meson). Al contrario de las instrucciones de compilación oficiales, OpenJDK no está incluido en mi manual, ya que utiliza el scrcpy-server-jar precompilado para facilitar las cosas.

Estas son las únicas instrucciones específicas de distribución. Entonces, si sabe cómo instalar estas dependencias (que pueden tener diferentes nombres según la distribución de Linux que esté usando) para otra distribución de Linux, los otros pasos deberían ser los mismos.

2. Descargue e instale el JAR del servidor scrcpy.

Descarga el último scrcpy-server-v*.jar de la página de recursos compartidos de aplicaciones y colóquelo en su carpeta de inicio. Si el archivo no contiene ese .jar Extensión, cámbiele el nombre y agréguela usted mismo.

Luego, instálalo en /usr/local/bin (aunque también se instala en /usr/local/share/scrcpy , por alguna razón scrcpy lo está buscando en /usr/local/bin ):

sudo install scrcpy-server-v*.jar /usr/local/bin/scrcpy-server.jar

3. Descargue el código fuente de la última versión de scrcpy y extráigalo a su carpeta de inicio.

Descargue el código fuente de Scrcpy (el .tar.gz Archive) de la página de versiones de la aplicación y extráigalo a una carpeta en su directorio de inicio llamada scrcpy (Elimine el número de versión del nombre de la carpeta scrcpy; esto facilitará el uso de estas instrucciones con futuras versiones de scrcpy).

La carpeta de inicio ahora debería tener un archivo llamado. tener scrcpy-server-v*.jar (por ejemplo, scrcpy-server-v1.17.jar para scrcpy v1.17) y una carpeta llamada scrcpy .

4. Cree e instale scrcpy.

Para crear scrcpy navegaremos a la carpeta scrcpy, crearemos la aplicación e instalaremos:

cd scrcpy
meson build --buildtype release --strip -Db_lto=true  -Dprebuilt_server=../scrcpy-server-v1.17.jar
cd build
ninja
sudo ninja install

Si instala una versión diferente de scrcpy, reemplace scrcpy-server-v1.17.jar desde el segundo comando con el nombre de archivo exacto que contiene la versión que está instalando.

Ahora puede eliminar la carpeta scrcpy de su directorio de inicio si lo desea.

Cómo usar scrcpy en Linux para controlar un dispositivo Android desde el escritorio de Linux (o grabar su pantalla)

Mencioné esto al principio del artículo, pero creo que debería decirlo de nuevo. Necesita un dispositivo con Android 5.0 o superior para controlarlo con scrcpy desde el escritorio. Además, asegúrese de tener habilitada la depuración ADB en su dispositivo Android. En algunos dispositivos, es posible que también deba activar una "Depuración de USB (configuración de seguridad)" adicional. oportunidad de poder controlar el dispositivo Android desde su computadora de escritorio.

Para usar scrcpy, conecte su dispositivo Android a su computadora a través de USB, luego ejecute scrcpy en una terminal:

scrcpy

Si no ha autorizado la computadora actual con su dispositivo Android usando adb, la primera vez que ejecute scrcpy, asegúrese de que la pantalla del dispositivo Android esté desbloqueada y autorice scrcpy (haga clic en OK en el dispositivo Android cuando se le solicite autorización)!

También vale la pena señalar que, en mi caso, en una computadora en la que no ejecuté adb antes, tuve que ejecutar scrcpy tres veces antes de que funcionara (probablemente no espere la autorización suficiente), así que tal vez quieras hacerlo. haz esto incluso si no funciona de inmediato:

[email protected]:~$ 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
[email protected]:~$ 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
[email protected]:~$ scrcpy
[100%] /data/local/tmp/scrcpy-server.jar
INFO: Initial texture: 1440x2560

¿Le gustaría grabar la pantalla de Android mientras controla el dispositivo Android desde su escritorio (con teclado y mouse)? Ejecute scrcpy con --record seguido del nombre del archivo a incluir, con mkv o mp4 como extensión. Por ejemplo:

scrcpy --record file.mp4

Quizás se esté preguntando cómo volver a la pantalla anterior en el dispositivo Android cuando lo controla desde el escritorio, ir a la pantalla de inicio o usar el conmutador de aplicaciones para dispositivos con botones físicos; puede usar algunas conexiones:

  • ratón right-click o Ctrl + b (o Ctrl + Backspace ) para ATRÁS
  • ratón middle-click o Ctrl + h (o el Home clave) para INICIO
  • Ctrl + s para el selector de aplicaciones

Para obtener información sobre cómo controlar de forma inalámbrica el dispositivo Android desde su escritorio, consulte las instrucciones detalladas en la página del proyecto de la aplicación. Consulte también la página de scrcpy para uso avanzado, como reducir el tamaño de la pantalla reflejada, cambiar la tasa de bits, recortar la pantalla o ejecutar múltiples instancias de scrcpy con múltiples dispositivos Android.

Cómo desinstalar scrcpy (instalado desde la fuente)

Los usuarios que deseen eliminar scrcpy de la fuente (siguiendo las instrucciones de este artículo) pueden ejecutar estos dos comandos:

sudo rm /usr/local/share/scrcpy/scrcpy-server.jar
sudo rm /usr/local/bin/scrcpy-server.jar
sudo rm /usr/local/bin/scrcpy


Debian
  1. Cómo instalar Ubuntu / Debian jdownloader linux

  2. Cómo instalar Pip en Ubuntu 18.04, Debian 9 y Linux Mint 19

  3. Cómo configurar Android SDK 4.0.3 con NetBeans IDE 7.1 en Linux Mint 12 / Ubuntu 11.10

  4. Instale Oracle Java 13 en Ubuntu, Linux Mint o Debian desde el repositorio APT PPA

  5. Nuevo instalador de Oracle Java 11 para Ubuntu, Debian o Linux Mint (con Oracle Java .tar.gz local)

Instalar paquetes desde un PPA de Ubuntu en Debian Linux

Pasos de instalación de escritorio de Fedora 21 con capturas de pantalla

Grabar sesión de escritorio con Kazam en Ubuntu / Linux Mint

Instale EHCP (Panel de control de hospedaje fácil) en RHEL/CentOS/Fedora y Ubuntu/Debian/Linux Mint

Diferencias en la interfaz gráfica de usuario de Linux Mint, Ubuntu, Manjaro y Debian Desktop

Instale EHCP (Panel de control de hospedaje fácil) en RHEL/CentOS/Fedora y Ubuntu/Debian/Linux Mint