tomar studio para pantalla laptop imprimir hacer computadora como codigo captura java android adb screenshot

java - studio - como hacer captura de pantalla en windows 10



Usando ADB para capturar la pantalla (6)

Lamento decirle que haga una screencap solo con un comando simple, solo acepte algunos argumentos, pero ninguno de ellos puede ahorrarle tiempo, aquí está la salida de ayuda de -h .

$ adb shell screencap -h usage: screencap [-hp] [-d display-id] [FILENAME] -h: this message -p: save the file as a png. -d: specify the display id to capture, default 0. If FILENAME ends with .png it will be saved as a png. If FILENAME is not given, the results will be printed to stdout.

Además del comando screencap , hay otra screenshot comando, no sé por qué se eliminó la screenshot de Android 5.0 , pero está disponible debajo de Android 4.4 , puede consultar la fuente desde here . No hice mi comparación, que es más rápida entre estos dos comandos, pero puede intentarlo en su entorno real y tomar la decisión final.

Esta pregunta ya tiene una respuesta aquí:

Estoy tratando de obtener una captura de pantalla de la pantalla del teléfono lo más rápido posible. Actualmente estoy haciendo:

adb shell screencap -p /sdcard/screencap.png && adb pull /sdcard/screencap.png

Sin embargo, es demasiado lento y tarda hasta 3 segundos. ¿Hay alguna manera mejor de hacer esto? Tengo la intención de utilizar esta función con un teléfono sin rootear.

Además, ¿cuáles son los diferentes argumentos que puedo usar para capturas de pantalla?

Gracias.

EDITAR (información adicional): tengo la intención de utilizar este método para poder obtener una transmisión en vivo de la pantalla en mi PC. El método actual funciona, sin embargo, es demasiado lento. No puedo usar el adb shell screenrecord porque no podré acceder al archivo de video mientras se está grabando.


Para comenzar a grabar la pantalla de su dispositivo, ejecute el siguiente comando:

adb shell screenrecord /sdcard/example.mp4

Este comando comenzará a grabar la pantalla de su dispositivo usando la configuración predeterminada y guardará el video resultante en un archivo en el archivo /sdcard/example.mp4 en su dispositivo.

Cuando haya terminado de grabar, presione Ctrl + C en la ventana del símbolo del sistema para detener la grabación en pantalla. Luego puede encontrar el archivo de grabación de pantalla en la ubicación que especificó. Tenga en cuenta que la grabación de la pantalla se guarda en el almacenamiento interno de su dispositivo, no en su computadora.

La configuración predeterminada es usar la resolución de pantalla estándar de su dispositivo, codificar el video a una velocidad de bits de 4 Mbps y establecer el tiempo máximo de grabación de pantalla en 180 segundos. Para obtener más información sobre las opciones de línea de comandos que puede usar, ejecute el siguiente comando:

adb shell screenrecord --help

Esto funciona sin enraizar el dispositivo. Espero que esto ayude.


Para que funcione @ OSX y Linux

adb exec-out screencap -p > screen.png


Puedes leer el binario desde stdout en lugar de guardar el png en la sdcard y luego extraerlo:

adb shell screencap -p | sed ''s|/r$||'' > screenshot.png

Esto debería ahorrar un poco de tiempo, pero no mucho.

fuente: leer datos binarios stdout de adb shell?


Usando parte del conocimiento de este y un par de otras publicaciones, encontré que el método que mejor me funcionó fue:

adb shell ''stty raw; screencap -p''

He publicado una secuencia de comandos de Python muy simple en GitHub que esencialmente refleja la pantalla de un dispositivo conectado a través de ADB:

https://github.com/baitisj/android_screen_mirror


https://.com/a/37191719/75579 respuesta dejó de funcionar para mí en Android 7 de alguna manera. Así que tengo que hacerlo de forma manual, así que quiero compartirlo.

Cómo instalar

  1. Coloque este fragmento de código en su archivo ~/.bash_profile o ~/.profile :

    snap_screen() { if [ $# -eq 0 ] then name="screenshot.png" else name="$1.png" fi adb shell screencap -p /sdcard/$name adb pull /sdcard/$name adb shell rm /sdcard/$name curr_dir=pwd echo "save to `pwd`/$name" }

  2. Ejecute el comando source ~/.bash_profile o source ~/.profile ,

Cómo utilizar

Uso sin especificar nombre de archivo:

$ snap_screen 11272 KB/s (256237 bytes in 0.022s) Saved to /Users/worker8/desktop/screenshot.png

Uso con un nombre de archivo:

$ snap_screen mega_screen_capture 11272 KB/s (256237 bytes in 0.022s) Saved to /Users/worker8/desktop/mega_screen_capture.png

¡Espero eso ayude!

** Esto no funcionará si se conectan múltiples dispositivos