2

私はアンドロイドが初めてです。次のコードを使用してビデオをキャプチャしています。

final int REQUEST_VIDEO_CAPTURED = 1;
Long tsLong = System.currentTimeMillis() / 1000;
String ts = tsLong.toString();
String imagepath = Environment.getExternalStorageDirectory() + "/"
                    + galleryStart + "/" + FolderName + "/" + ts + ".mp4";

File file = new File(imagepath);
Uri outputFileUri = Uri.fromFile(file);
Intent intent = new Intent(android.provider.MediaStore.ACTION_VIDEO_CAPTURE);
intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT,outputFileUri);
startActivityForResult(intent, REQUEST_VIDEO_CAPTURED); 

パスを設定していない場合、それ以外の場合は正常に動作し、エラーが発生します。「残念ながらカメラは動作を停止しました。」特定のディレクトリにビデオを保存するためのパスを設定しています。

4

1 に答える 1

1

カメラアプリは、あなたが要求したディレクトリを作成しませんUri。なので、まずは作ってみてください。

String imagepath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/" + galleryStart + "/" + FolderName + "/" + ts + ".mp4";
File file = new File(imagepath);
  try 
  {
  if(file.exists() == false) 
    {
     file.getParentFile().mkdirs();
     file.createNewFile();
    }
  } 
  catch (IOException e) 
  {
   Log.e(TAG, "Could not create file.", e);
  }
Uri outputFileUri = Uri.fromFile(file);

それがあなたを助けることを願っています!!

于 2013-01-21T06:40:20.623 に答える