Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/181.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 记录整个屏幕,包括前摄像头预览_Android_Surfaceview_Mediarecorder - Fatal编程技术网

Android 记录整个屏幕,包括前摄像头预览

Android 记录整个屏幕,包括前摄像头预览,android,surfaceview,mediarecorder,Android,Surfaceview,Mediarecorder,我写了一个小游戏。它实现了前向cam预览。我希望能够将整个屏幕记录到mp4。我该怎么做?任何人都知道将整个屏幕录制到mp4的不错的教程(用代码,所以不仅仅是屏幕截图..我想让用户在玩游戏时进行录制)。不允许应用程序抓取屏幕内容(请参阅) [五十] 应用程序随意抓取屏幕内容是一个严重的安全风险,这就是平台阻止它的原因(拍摄快照需要用户直接进行物理操作,或者使用调试工具) 正如@commonware在他的评论中提到的那样,如果您使用的是SurfaceView或它的一个子项(例如VideoView),

我写了一个小游戏。它实现了前向cam预览。我希望能够将整个屏幕记录到mp4。我该怎么做?任何人都知道将整个屏幕录制到mp4的不错的教程(用代码,所以不仅仅是屏幕截图..我想让用户在玩游戏时进行录制)。

不允许应用程序抓取屏幕内容(请参阅)

[五十] 应用程序随意抓取屏幕内容是一个严重的安全风险,这就是平台阻止它的原因(拍摄快照需要用户直接进行物理操作,或者使用调试工具)


正如@commonware在他的评论中提到的那样,如果您使用的是
SurfaceView
或它的一个子项(例如
VideoView
),则您不能使用
getDrawingCache
方法获取
视图的
位图
)。更多细节

事实上,正如@Michael所说,直接访问屏幕截图和帧缓冲区机制是不可能的。不过,如果你想录制游戏会话,这并不意味着你完全不走运。这只是更多的工作

如果您在游戏中生成了各种动作的完美记录,请保存该记录。然后,您可以构建一个服务(web服务、本地服务等)来接受记录作为输入。实际上,它将重播游戏。然后,您将以可以生成视频的方式重建游戏


您还可以在Android emulator中重播并从中创建视频。部署起来不是那么容易,但这取决于您想用它做什么。

我怀疑这是否可行。抱歉,您无法从
SurfaceView
中读取。