当前位置: 首页 > 编程笔记 >

Android下录制App操作生成Gif动态图的全过程

邴俊民
2023-03-14
本文向大家介绍Android下录制App操作生成Gif动态图的全过程,包括了Android下录制App操作生成Gif动态图的全过程的使用技巧和注意事项,需要的朋友参考一下

Android App开发完了,自然希望录个gif做个展示。视频也可以做展示,但是需要上传到优酷、土豆等等,而且本来就十几秒的App演示操作过程,视频网站的广告就要一分钟,没有gif轻量简单省流量。

下图是我录制的一个短信消灭器应用的效果图:

本文教大家如何录制gif,分享给大家供大家参考,具体内容如下

思路

生成gif的思路是两步

1、把App操作过程录制成视频
2、根据视频转换成Gif

目前网上录制GIf的思路也基本都是分为这2步,不知道有没有更好的方法,一步就生成gif动态的?

利用adb 录制屏幕

在Android sdk下面有一些很有用的工具,adb位于platform-tools文件夹,开发者用它在设备上安装启动应用。早期的sdk版本中,adb位于tools文件夹中。

在终端(linux或者mac os)或者命令提示符(windows)键入

adb help all

可以列出所有可用的命令。

注意,如果经常使用adb工具,建立把sdk的文件夹路径添加到PATH环境变量中。不加入到环境变量中,每次启动adb都需要cd到platform-tools文件夹的位置。
我们录制屏幕利用 adb shell screenrecord命令,还可以使用adb shell screenshot进行截屏。下面是使用说明

tomchen$ ./adb shell screenrecord --help
Usage: screenrecord [options] <filename>

Records the device's display to a .mp4 file.

Options:
--size WIDTHxHEIGHT
 Set the video size, e.g. "1280x720". Default is the device's main
 display resolution (if supported), 1280x720 if not. For best results,
 use a size supported by the AVC encoder.
--bit-rate RATE
 Set the video bit rate, in megabits per second. Default 4Mbps.
--time-limit TIME
 Set the maximum recording time, in seconds. Default / maximum is 180.
--rotate
 Rotate the output 90 degrees.
--verbose
 Display interesting information on stdout.
--help
 Show this message.

Recording continues until Ctrl-C is hit or the time limit is reached.

tomchen$ pwd
/Applications/sdk/platform-tools

可以用--size指定视频分辨率的大小,--bit-rate指定比特率的大小。一般我们不需要设置,用默认的就行了。

tomchen$ ./adb shell screenrecord /sdcard/example.mp4

然后就可以录制的,默认时间是180s ,一般不需要这么长,录制完之后我们ctrl+c提前结束就行。
下面利用 pull 命令把手机上的视频拷到电脑上(也可以用手机助手啥的)

adb push <local> <remote> 将电脑上的文件复制到手机(通常是 sd 卡)
adb pull <remote> <local> 将手机上的文件复制到电脑

示例:

tomchen$ ./adb pull /sdcard/example.mp4 ~/Documents/
8786 KB/s (9449246 bytes in 1.050s)

Android studio 自带录制功能

现在一般都不要 Eclipse 开发 Android,转移到 Android Studio,录制屏幕的功能 google 自然想到了,点击开始按钮就行了(适合不熟悉命令行的同学们)
在 Android Studio 最下方的Android栏左边有一个按钮(下图红框圈出的部分),点击就可以实现录屏。还可以选择比特率、分辨率等,分辨率没空则采用默认值。

点击Start Recording就开始录制了,会弹出录制时间框

录完之后点击Stop Recording,停止录制。

最后会提示录制视频的保存位置,自己选个文件夹保存。

Android Studio 也提供了截屏功能,就在录制按钮的上方

点击截屏会弹出手机当前的操作界面,还可以用Reload刷新手机界面。

视频转gif

这儿方法也有很多

  • 格式工厂之类的,输入视频格式,导出为gif格式
  • 截取很多帧图片,将多张图片拼接为gif
  • QQ影音工具箱自带了截取一段视频保存为gif格式

本文采用一种最简单的方法,利用一款叫 GifCam 的绿色版软件

使用方法很简单,
1. 用一个播放器打开咱们刚才录制好的mp4视频,然后拖动调整 GifCam 大小,让它的透明区域(录制gif区域)覆盖你要录制范围。
2. 点击播放器播放视频,再点击GifCam的Rec按钮,就可以录制gif了。
3. 录完点击stop按钮,选择gif文件保存位置。

 

本文讲解Android 下如何录制App操作生成Gif动态图的方法,希望对大家的学习有所帮助。

 类似资料:
  • GIF(Graphics Interchange Format,图形交换格式)是一种“位图”图像格式,它以 作为图像的扩展名。GIF 图片非常适合在互联网中使用,这是因为它采用了图像预压缩技术,该技术的应用,在一定程度上减少了图像传播、加载所消耗的时间。 与其他格式的图片相比,GIF 还有一项非常重要的应用,那就是生成动态图。我们知道,Pillow 能够处理多种图像格式,包括 GIF 格式,它可以

  • 本文向大家介绍Python图像处理之gif动态图的解析与合成操作详解,包括了Python图像处理之gif动态图的解析与合成操作详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python图像处理之gif动态图的解析与合成操作。分享给大家供大家参考,具体如下: gif动态图是在现在已经司空见惯,朋友圈里也经常是一言不合就斗图。这里,就介绍下如何使用python来解析和生成gif图像。 一

  • 本文向大家介绍PHP使用GIFEncoder类生成的GIF动态图片验证码,包括了PHP使用GIFEncoder类生成的GIF动态图片验证码的使用技巧和注意事项,需要的朋友参考一下 相信很多人都想过如何用PHP生成GIF动画来实现动态图片验证码,以下是实现过程。 ImageCode函数通过GIFEncoder类实现的GIF动画的PHP源代码,有兴趣的朋友可以研究一下。 效果如图: GIFEncode

  • UI 界面只有静态页面内容是不够的,我们会遇到很多需要由一组数据动态生成多个元素组成的 UI 面板,比如选人界面、物品栏、选择关卡等等。 准备数据 以物品栏为例,我们要动态生成一个物品,大概需要这样的一组数据: 物品 id 图标 id,我们可以在另一张资源表中建立图标 id 到对应 spriteFrame 的索引 物品名称 出售价格 ... 下面我们将会结合脚本介绍如何定义和使用数据,如果您对 C

  • UI 界面只有静态页面内容是不够的,我们会遇到很多需要由一组数据动态生成多个元素组成的 UI 面板,比如选人界面、物品栏、选择关卡等等。 准备数据 以物品栏为例,我们要动态生成一个物品,大概需要这样的一组数据: 物品 id 图标 id,我们可以在另一张资源表中建立图标 id 到对应 spriteFrame 的索引 物品名称 出售价格 ... 下面我们将会结合脚本介绍如何定义和使用数据,如果您对 C

  • 本文向大家介绍PHP使用GIFEncoder类生成gif动态滚动字幕,包括了PHP使用GIFEncoder类生成gif动态滚动字幕的使用技巧和注意事项,需要的朋友参考一下 今天在公司,经理让做一个滚动字幕。但是,不许生成gif图片。所以上网找了GIFEncoder这个类库。确实很好用,但是,应用过程中也出现了一些问题,现在写在这里,以供后来人参考,少走弯路。 文字滚动分为两种情况。第一种为水平滚动