当前位置: 代码迷 >> 综合 >> Android 系列 1.12从模拟器/ Android设备截取屏幕截图/视频
  详细解决方案

Android 系列 1.12从模拟器/ Android设备截取屏幕截图/视频

热度:59   发布时间:2024-01-19 16:49:03.0
1.12从模拟器/ Android设备截取屏幕截图/视频
问题
您想要截取在Android设备上运行的应用程序的屏幕截图或视频。
解
对于屏幕截图,请使用设备的硬件按钮,或Dalvik Debug Monitor Server(DDMS)视图的设备屏幕捕获功能,或adb screencap。 对于视频,请使用adb screenrecord。
讨论
捕获屏幕截图
要使用设备屏幕捕获功能,请按照下列步骤操作:
1.在IDE中运行应用程序并转到DDMS视图(窗口菜单→打开透视图→其他→DDMS或窗口菜单→显示视图→其他→Android→设备); 前者如图1-49所示)。


图1-48。 启动DDMS视图
1.在DDMS视图中,选择要捕获其屏幕的设备或模拟器。

2.在DDMS视图中,单击屏幕捕获图标。 参见图1-49。


图1-49。设备屏幕捕获
3.将弹出一个窗口,显示模拟器/ Android设备的当前屏幕。它应该如图1-50所示。您可以保存屏幕截图并使用它来记录应用程序。


图1-50。截图
或者,要在命令行级别执行此操作,请使用adb。你必须使用“adb shell”运行“mount”命令来查找特定设备上的可写目录,因为大多数Android版本都没有通用的“/ tmp”文件夹。完成后,使用adb shell在设备上运行screencap程序,然后将文件“拉”到您的桌面,如下所示:
$ adb shell screencap -p /mnt/asec/pic.png#现在在设备上的一个文件中
$ adb -e pull /mnt/asec/pic.png#现在在我的dev机器上的一个文件中[100%] /mnt/asec/pic.png
$ ls -l pic.png#确定!
-rw-r - r - @ 1 ian staff 59393 Jun 21 17:30 pic.png
$ adb shell rm /mnt/asec/pic.png#释放设备上的存储空间
$ ...现在在开发机上做一些与pic.png的事情
或者,如果您使用设备上的按键序列(通常同时按住电源和音量调低)来创建屏幕截图,屏幕截图将创建在固定目录中,名称中包含日期戳;您可以“列出”(ls)目录,并拉下该文件,并重命名为更好的名称:

$ adb -d ls /sdcard/Pictures/Screenshots
000041f9 00001000 57c62dd8 .
000041f9 00001000 578f7813 ..
000081b0 000a231c 55760303 Screenshot_20150608-170256.png
000081b0 0001176d 55760308 Screenshot_20150608-170303.png
000081b0 0006b9b4 557a1619 Screenshot_20150611-191328.png
000081b0 0001968a 55869982 Screenshot_20150621-070121.png
... and a bunch more ...
$ adb -d pull /sdcard/Pictures/Screenshots/Screenshot_20160714-093303.png
[100%] /sdcard/Pictures/Screenshots/Screenshot_20160714-093303.png
$ mv Screenshot_2016-07-14-09-33-03.png SomeBetterName.png
$

文件名的日期戳部分如果不明显,则按ISO国际标准的顺序:年,月和日,然后是破折号( - ),然后是小时,分和秒,但不完全在ISO格式。


捕获屏幕视频
要记录设备的屏幕以进行文档或屏幕录制,您需要在创建文件的设备上运行screenrecord程序,然后使用adb pull或其他方式将文件转移到桌面系统。请记住,您的台式计算机和设备都有类似的分层文件系统(如果运行Unix,包括Mac OS X或Linux,文件系统结构几乎相同,因为Android是基于Linux的,Linux是作为Unix的副本开始的) 。只要记住哪些文件名在哪台电脑上! adb命令与设备通信并运行“shell”或命令解释器,我们用它在设备上运行screenrecord命令,将输出捕获到/ sdcard目录中的临时文件中。
adb shell screenrecord /sdcard/tmpFileName.mp4
现在,您可以与应用程序交互以显示要记录的错误或功能。完成后,停止adb命令,例如,在终端窗口中使用CTRL / C。然后将临时文件从设备上的/ sdcard文件夹拖动到桌面上的某个方便的位置(如果您喜欢,可以同时为其分配更好的名称,例如myScreencastSegment.mp4)。
adb pull /sdcard/tmpFileName.mp4 myScreencastSegment.mp4
然后,您可以使用桌面系统上的任何工具查看或后处理视频。图1-51显示了一个简单的视频,以这种方式记录和下载,在我的桌面上播放。
视频安全地在您的桌面上(并备份!)后,您可能需要从设备中删除该文件,这样您就不会在磁盘空间中运行该文件。
adb rm /sdcard/tmpFileName.mp4



  相关解决方案