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
    )

相关推荐
张小姐的猫15 小时前
【MySQL】事务
android·mysql·adb
霂鳯16 小时前
新手勇闯网络安全 | MySQL基础(四)
mysql·web安全·adb
嵌入式-老费17 小时前
esp32开发与应用(题外话之ADB和Android NDK开发)
android·adb
2501_916007471 天前
抓包工具功能对比,TraceEagle、Charles、Fiddler、Wireshark、mitmproxy 差别
前端·网络协议·ios·adb·https·fiddler·wireshark
❀͜͡傀儡师2 天前
MySQL REST Service 认证鉴权体系与 MySQL 26.10.0 内置化演进
数据库·mysql·adb
DevNote_3 天前
1C1G 服务器从零配置实录(附完整命令)
linux·运维·服务器·javascript·adb·ssh·gmssh
瑞克-桑切斯4 天前
mysql二进制日志定时备份
adb
class心平气和4 天前
ADB 工具函数 Python 使用教程
开发语言·python·adb
程序员塔塔喵4 天前
【MySQL篇|第八篇】索引底层实现
数据库·mysql·adb·索引
pigdreams4 天前
Google 官方 Android CLI:让AI直接读布局结构而不是用adb截图验证
android·人工智能·adb