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
    )

相关推荐
后端码匠6 小时前
MySQL 8.0安装(压缩包方式)
android·mysql·adb
问道飞鱼8 小时前
【数据库知识】Mysql进阶-高可用MHA(Master High Availability)方案
数据库·mysql·adb·高可用·mha
tiging8 小时前
centos7.x下,使用宝塔进行主从复制的原理和实践
数据库·mysql·adb·主从复制
董可伦10 小时前
Dinky 安装部署并配置提交 Flink Yarn 任务
android·adb·flink
VirusVIP1 天前
Windows CMD通过adb检查触摸屏Linux驱动是否被编译
linux·运维·adb
didiplus2 天前
MySQL 8.0 OCP(1Z0-908)英文题库(31-40)
mysql·adb·ocp·数据库管理员·mysql认证
萧然CS2 天前
使用ADB命令操作Android的apk/aab包
android·adb
越甲八千2 天前
windowsC++操作ADB
c++·windows·adb
自然 醒3 天前
荣耀手机,系统MagicOS 9.0 USB配置没有音频来源后无法被adb检测到,无法真机调试的解决办法
adb·uni-app
xx155802862xx3 天前
在CentOS 7上仅安装部署MySQL 8.0客户端
mysql·adb·centos