安卓怎么录屏(安卓怎么录屏有声音的)

随着安卓设备市场占有率的不断攀升,越来越多的安卓应用为更多的人提供着更加完备的服务。

这一期我们来探讨一下安卓设备上的录屏功能如何实现。

第一步,确定安卓版本在5及其以上,从安卓5开始,有了一个新的Package: Android.media.projection。如果是安卓5之前的版本就复杂一些,这期我们不讨论。

第二步,定义录屏服务。要用到如下几个关键类:MediaProjetionManager,MediaProjection, VirtualDisplay, MediaCodec, MediaMuxer, MediaMuxer.BufferInfo,FloatView

FloatView主要是定制人机交互接口,用来开始和结束录屏。

录制开始时,设定视频格式,fps, bit rate等参数用于视频编码MediaCodec。

接下来获取MediaProjection, 从而创建VirtualDisplay。

然后创建视频路径,用视频全路径生成一个MediaMuxer.

在一个循环中,用MediaCodec读取视频缓冲,用MediaMuxer写入到视频文件中。

第三步,如果是自己的独立应用使用上述服务,就在自己的程序中,启动第二步定义的服务。如果上述服务作为一个单独的应用启动,则单独启动这个录屏应用。

第四步,通过交互界面实现录屏功能。

第五步,当然,作为安卓程序员都很熟悉的,我们需要提供程序运行所需要的权限。

怎么样?不难吧!