Cкриншот экрана через ADB

 

Существует множество способов сделать снимок экрана на устройстве Android. Один простой способ захвата экрана на смартфонах с андроид - это одновременное нажатие и удержание кнопок Power и Volume Down . Изображение будет сохранено в каталоге «Снимок экрана» и доступен через  приложение «Галерея». 

Довольно часто, нужно скопировать  изображение снимка экрана смартфона на  омпьютер. Обычно это делается  с помощью команды adb pull. Есть еще несколько методов, о которых пойдет речь, и так, один из методов - использовать команду screencap через adb shell например: 
 

adb shell screencap -p /sdcard/screen.png
adb pull /sdcard/screen.png
adb shell rm /sdcard/screen.png

screencap -h  показывает, что снимок экрана можно отправить на stdout , но запуск adb shell screencap -p > screen.png копирует пустой файл. 

Решение заключается в использовании sed search и replace следующим образом: 
 

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

К сожалению, я обнаружил, что Ubuntu не работает на OS X. Это решение использует perl обрабатывает двоичный поиск и заменяет лучше: 
 

adb shell screencap -p | perl -pe's / \ x0D \ x0A / \ x0A / g '> screen.png

Теперь у нас есть один лайнер, который захватывает снимок экрана с устройства Android и непосредственно на компьютере, выполняющем команду. Красивая.

Оцените блог: 
Средняя: 5 (3 оценки)