• 电脑用命令给Android手机录屏方法 记录


    目的:有时候有些崩溃来得比较突然,又不记得怎么操作的,这时候如果可以翻看录像就完美了.(重点是:手头的平板没有录屏功能)

    1. adb

    adb shell screenrecord --size 1280x800 "/sdcard/screenrecord_log.mp4"

    adb pull /sdcard/screenrecord_log.mp4 D:/screenrecord_log.mp4

    具体不多说,单纯记录一下

    adb shell screenrecord 录制视频命令

    --size 1280x800  这个值为视频尺寸,一般设置为屏幕尺寸,获取屏幕尺寸用adb shell wm size

    "/sdcard/screenrecord_log.mp4" 为录制视频存放的地址

    adb pull     把设备中文件复制到电脑里

    /sdcard/screenrecord_log.mp4 为设备中的文件路径

    D:/screenrecord_log.mp4  将要在电脑中存放的文件路径

    2.python adbutils模块

    https://github.com/openatx/adbutils github地址

    使用前需要安装此模块,使用pip install adbutils

     1 import adbutils
     2 import time
     3 import os
     4 
     5 
     6 def main():
     7 
     8     d = adbutils.adb.device()
     9 
    10     current_time = time.strftime('%Y%m%d_%H%M%S', time.localtime(time.time()))
    11 
    12     screenrecord_file_name = 'log_screenrecord_' + current_time +'.mp4'
    13     folder_path = 'D:\ALOG\'
    14     screenrecord_file_path = os.path.join(folder_path, 'screenrecord',screenrecord_file_name)
    15 
    16 
    17     sc = d.screenrecord("/sdcard/s.mp4")
    18 
    19 
    20     time.sleep(15)  # 录制15s视频
    21     sc.stop_and_pull(screenrecord_file_path)
    22   
    23 
    24 
    25 if __name__ == '__main__':
    26     main()
    d = adbutils.adb.device() 返回一个adbDevice对象,之后才可以对这个对象进行操作
    d.screenrecord(remote_path=None, no_autostart=False) 
    其中
    remote_path 为设备中存放的地址,如不输入则默认为"/sdcard/video-%d.mp4" % int(time.time() * 1000),如video-20191120.mp4
    no_autostart 标志是否直接开始录屏,如果
    no_autostart 为 False,那就直接开始录制,默认为False,如果这个值取为True,那么需要调用sc.start()来开始录制.

    因此,sc = d.screenrecord("/sdcard/s.mp4") 为开始录制,存放文件路径为
    "/sdcard/s.mp4"

    stop_and_pull(path: str)
    停止录制并把视频传到电脑中,设备中视频被删除.
    其中path为电脑中存放视频的路径
    如果用sc.stop(),那只是停止录制,并不传到电脑中

    adbutils的录屏方法其实也是用adb shell screenrecord,但是看需求,有些情况下,直接用adb命令并不是很方便
     
  • 相关阅读:
    选择、插入、气泡排序
    JDBC基础学习(四)—数据库事务
    JDBC基础学习(三)—处理BLOB类型数据
    JDBC基础学习(二)—PreparedStatement
    JDBC基础学习(一)—JDBC的增删改查
    JavaWeb总结(十)—文件上传和下载
    JavaWeb总结(九)—过滤器
    JavaWeb总结(八)—EL表达式
    Java基础学习(三)—面向对象(上)
    MySQL学习笔记(一)—数据库基础
  • 原文地址:https://www.cnblogs.com/congyinew/p/11900307.html
Copyright © 2020-2023  润新知