【问题标题】:Android Video Recording ,Camera IntentAndroid 视频录制,相机意图
【发布时间】:2010-12-09 06:34:04
【问题描述】:

我使用以下Intents 来录制视频和拍照,但在摩托罗拉 Droid 2.2 中,相机Intent 保存选项失败,即没有保存任何内容,并且摄像头 Intent 取消使我的应用程序崩溃。

Intent 中,我都明确传递了文件,在它返回结果“ok”之后我使用该文件,即当用户按下意图中的保存/插入选项时:在摄像机中保存没问题,只有取消导致崩溃摄像机。

相机

 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 播放

【问题讨论】:

  • i.putExtra(android.provider.MediaStore.EXTRA_VIDEO_QUALITY, 0);更改视频质量。
  • 您需要提供来自 Logcat 的崩溃日志

标签: android android-intent android-camera


【解决方案1】:

如果您无法避免使用android.provider.MediaStore.EXTRA_OUTPUT,请尝试通过这样的内容提供者准备 URI

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

To to 所以你应该首先准备正确的内容值(设置 MediaColumns.DISPLAY_NAME、MediaColumns.MIME_TYPE 等等)。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-10
    • 2017-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多