Android视频录制,相机意图

时间:2010-12-09 06:34:04

标签: android android-intent android-camera

我使用以下Intent来录制视频和拍照,但在Motorola Droid 2.2中,相机Intent保存选项失败,即没有保存,并且摄像头Intent取消崩溃我的申请。

Intent中我明确传递文件并在返回结果“ok”后我使用该文件,即当用户按下intent中的save / insert选项时:在camcoder中保存没问题,只取消casues在摄像机中崩溃。

相机

 Intent intent2 = new Intent("android.media.action.IMAGE_CAPTURE");
 imgUri = Uri.fromFile(photofile);
 intent2.putExtra(MediaStore.EXTRA_OUTPUT, imgUri);
 startActivityForResult(intent2, 1);

摄录一体机

 Intent i = new Intent("android.media.action.VIDEO_CAPTURE");
 i.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, Uri.fromFile(videofile));
 i.putExtra(android.provider.MediaStore.EXTRA_VIDEO_QUALITY, 0);
 i.putExtra("android.intent.extra.durationLimit", 60);
 startActivityForResult(i, 2);

注意:录制的视频无法使用HTC ERIS播放

1 个答案:

答案 0 :(得分:1)

如果您无法避免使用android.provider.MediaStore.EXTRA_OUTPUT尝试通过内容提供商(如

)准备URI
context.getContentResolver().insert(android.provider.MediaStore.Video.Media.EXTERNAL_CONTENT_URI, contentValues);

要执行此操作,您应首先准备正确的内容值(设置MediaColumns.DISPLAY_NAME,MediaColumns.MIME_TYPE等)。

但最好的方法是不指定系统为您的视频提供的URI和用户URI。