adb 脚本化Android系统截图和录屏

1、首先我们了解截图和录屏最基础的命令

  • 手机录屏

    adb shell screenrecord sdcard/Pictures/Screenshots/Record_xxx.mp4

  • 导出手机录屏

    adb pull sdcard/Pictures/Screenshots/Record_xxx.mp4

  • 手机截屏

    adb shell screencap /sdcard/Screenshots_xxx.png

  • 导出手机截屏

    adb pull sdcard/Pictures/Screenshots/Screenshots_xxx.png

2、实际开发中我们为了提高工作效率,采用脚本

  • 录屏脚本 screenrecord.bat,root环境下调试使用

    复制代码
    :: ITplus
    :: V 1.0.0
    @echo off
    color 02
    :: 保证手机非锁屏状态,锁屏状态录制不成功文件大小为0kb
    :: 录制10s,可以手动修改
    set recordtime=30
    echo start screenrecord %recordtime% s
    set filename=screenrecord%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%
    adb shell screenrecord sdcard/Pictures/Screenshots/%filename%.mp4 --time-limit %recordtime% --bugreport
    echo copy  screenrecord %filename%.mp4
    adb pull sdcard/Pictures/Screenshots/%filename%.mp4
    echo remove  screenrecord %filename%.mp4
    adb shell rm sdcard/Pictures/Screenshots/%filename%.mp4
    echo screenrecord success
    pause
  • 对录屏脚本进行升级,支持设置录制时长

    :: ITplus
    :: V 2.0.0
    @echo off
    color 02
    :: 保证手机非锁屏状态,锁屏状态录制不成功文件大小为0kb
    :: 录制10s,可以手动修改
    chcp 65001
    cls
    echo ######################请选择要执行的操作######################
    echo ---------------------1、输入录屏时长,以秒为单位-------------
    echo ---------------------最少10s,少于10秒录制不成功-------------
    echo ##############################################################
    :reinput
    set /p recordtime= 请输入:

    if %recordtime% LSS 10 (
    echo 最少10秒,少于10秒录制不成功
    goto reinput
    )

    if %recordtime% GTR 600 (
    echo 最多录制10分钟
    goto reinput
    )

    chcp 936
    cls
    echo start screenrecord %recordtime% s
    set filename=screenrecord%date:0,4%%date:5,2%%date:8,2%%time:0,2%%time:3,2%%time:6,2%
    adb shell screenrecord sdcard/Pictures/Screenshots/%filename%.mp4 --time-limit %recordtime% --bugreport
    echo copy screenrecord %filename%.mp4
    adb pull sdcard/Pictures/Screenshots/%filename%.mp4
    echo remove screenrecord %filename%.mp4
    adb shell rm sdcard/Pictures/Screenshots/%filename%.mp4
    echo screenrecord success
    pause

  • 截图脚本 Screenshots.bat

    :: ITplus
    :: V 1.0.0
    echo off
    color 02
    set filename=Screenshots%date:0,4%%date:5,2%%date:8,2%%time:0,2%%time:3,2%%time:6,2%
    echo start screencap
    adb shell screencap /sdcard/%filename%.png
    echo copy screencap %filename%.png
    adb pull /sdcard/%filename%.png
    echo remove screencap %filename%.png
    adb shell rm /sdcard/%filename%.png
    echo screencap success
    pause

  • 对截图脚本进行升级,支持连续截图

    :: ITplus
    :: V 2.0.0
    echo off
    color 02

    :again
    chcp 936
    cls
    :: 开始截图
    set filename=Screenshots%date:0,4%%date:5,2%%date:8,2%%time:0,2%%time:3,2%%time:6,2%
    echo start screencap
    adb shell screencap /sdcard/%filename%.png
    echo copy screencap %filename%.png
    adb pull /sdcard/%filename%.png
    echo remove screencap %filename%.png
    adb shell rm /sdcard/%filename%.png
    echo screencap success
    :: 完成截图

    chcp 65001
    cls
    echo ######################请选择要执行的操作######################
    echo ---------------------1、输入1继续截图-----------------------
    echo ---------------------2、输入其他退出 -----------------------
    echo ##############################################################

    set /p a= 请输入:

    if "%a%" == "1" (
    goto again
    )

相关推荐
fengye2071612 天前
板凳-------Mysql cookbook学习 (十)
学习·mysql·adb
进击的CJR2 天前
MySQL 8.0 OCP 英文题库解析(十)
mysql·adb·开闭原则
VirusVIP3 天前
解决:如何在Windows adb使用dmesg | grep检查内核日志
linux·adb
睡觉待开机3 天前
4. 数据类型
android·adb
进击的CJR3 天前
MySQL 8.0 OCP 英文题库解析(十一)
mysql·adb·开闭原则
___波子 Pro Max.4 天前
ADB推送文件到指定路径解析
adb
湿物男5 天前
mysql核心知识点
数据库·mysql·adb
fengye2071616 天前
板凳-------Mysql cookbook学习 (九--2)
学习·mysql·adb
快去睡觉~7 天前
MySQL之数据库的内嵌函数和联合查询
数据库·mysql·adb
find_element_by_id7 天前
adb 常用命令笔记
笔记·adb