Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/227.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/4/video/2.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_Video_Android Intent_Camera - Fatal编程技术网

Android 摄像头应用程序在视频意图后崩溃,但图片意图工作正常吗?

Android 摄像头应用程序在视频意图后崩溃,但图片意图工作正常吗?,android,video,android-intent,camera,Android,Video,Android Intent,Camera,我正在使用camera intent使用默认的camera应用程序捕获静态图像和视频。拍照和录像的方法非常相似。图片一个作品伟大,它保存的照片到临时文件,我提供的路径,在意图。但是,视频不起作用 视频意图正常打开摄像头应用程序,然后我录制m视频,一切似乎都很好,但当我完成录制或达到某个限制时,摄像头应用程序就会崩溃 这是我的活动中调用摄像头应用程序的代码: private void takeVideo() { Intent videoIntent = new Intent(andr

我正在使用camera intent使用默认的camera应用程序捕获静态图像和视频。拍照和录像的方法非常相似。图片一个作品伟大,它保存的照片到临时文件,我提供的路径,在意图。但是,视频不起作用

视频意图正常打开摄像头应用程序,然后我录制m视频,一切似乎都很好,但当我完成录制或达到某个限制时,摄像头应用程序就会崩溃

这是我的活动中调用摄像头应用程序的代码:

private void takeVideo()
{
       Intent videoIntent = new Intent(android.provider.MediaStore.ACTION_VIDEO_CAPTURE);

       File tempFolder = new File(Environment.getExternalStorageDirectory(), "MediaTemp");
       tempFolder.mkdirs(); 
       File video = new File(tempFolder, "vid.tmp");
       Uri uriSavedVideo = Uri.fromFile(video);
       videoIntent.putExtra(MediaStore.EXTRA_OUTPUT, uriSavedVideo);
       videoIntent.putExtra(MediaStore.EXTRA_DURATION_LIMIT, 60);
       videoIntent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 0);
       videoIntent.putExtra(MediaStore.EXTRA_SIZE_LIMIT, (long)(16*1024*1024));

       this.startActivityForResult(videoIntent, 2);
}

private void takePicture()
{
       Intent pictureIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);

       File tempFolder = new File(Environment.getExternalStorageDirectory(), "MediaTemp");
       tempFolder.mkdirs(); 
       File image = new File(tempFolder, "pic.tmp");
       Uri uriSavedImage = Uri.fromFile(image);
       pictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, uriSavedImage);

       this.startActivityForResult(pictureIntent, 1);
}

我不认为问题出在OnActivityResult方法中,因为崩溃的应用程序是摄像头应用程序,而不是我自己的应用程序,因此它遇到的问题必须在我的应用程序重新控制OnActivityResult之前发生。但我不明白是什么导致了这次坠机。。有人能对此提供一些见解吗?

我没有使用安卓摄像头,但您可能想看看Commonware是如何在他的库中解决这些问题的:

从github页面:

CWAC Camera致力于将“大量代码”标准化,并将其隐藏在可伸缩的API后面。在这里,“可伸缩”意味着“简单的事情很简单,但复杂的事情可能有点复杂”

归功于