我正在尝试创建一个允许视频录制的应用程序。我知道使用 MediaStore.ACTION_IMAGE_CAPTURE,它实际上是从我的应用程序调用相机系统,拍照后,它会返回我的应用程序并返回结果。
在使用代码时,我发现了一个 MediaStore.ACTION_VIDEO_CAPTURE。我认为它会相机,但在视频模式下,而不是图像捕捉模式。
我用于在视频模式下调用相机的代码:
Intent takeVideoFromCameraIntent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
Uri mUri = Uri.fromFile(new File(Environment.getExternalStorageDirectory(), "/Record/vid_"+ String.valueOf(System.currentTimeMillis()) + ".mp4"));
takeVideoFromCameraIntent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, mUri);
startActivityForResult(takeVideoFromCameraIntent, RESULT_OK);
当我使用真实设备运行该应用程序时,它会以视频模式调用相机并允许视频录制。但是,当我按下录制按钮完成录制时,它会返回到我的应用程序并显示强制关闭消息,说明相机没有响应。
一开始,我以为视频没有被捕获,但是当我搜索该文件时,它确实存在。
然后,我认为是我的 onActivityResult 方法导致了问题,但是在我用 /* ... */ 评论它之后,它仍然有同样的问题。但 LogCat 中没有显示任何详细信息。