Android MediaStore.ACTION_VIDEO_CAPTURE,外部路径?

Kar*_*thi 5 video android

我使用MediaStore.ACTION_VIDEO_CAPTUREintent类捕获视频,存储在默认位置(图库)的视频,我想将视频存储在具有特定名称的特定位置.

我用MediaStore.EXTRA_MEDIA_TITLEMediaStore.EXTRA_MEDIA_OUTPUT,但我不`吨获得在正确的位置的视频,至少我需要录制视频的路径.

提前致谢.

小智 10

来自Zelimir的解决方案在我的情况下不起作用(视频位于正确的位置但是大小为零字节).所以我找到了另一个解决方案:

protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
  super.onActivityResult(requestCode, resultCode, intent);

  if (resultCode != RESULT_OK) return;

  try {
    AssetFileDescriptor videoAsset = getContentResolver().openAssetFileDescriptor(intent.getData(), "r");
    FileInputStream fis = videoAsset.createInputStream();
    File tmpFile = new File(Environment.getExternalStorageDirectory(),"VideoFile.3gp"); 
    FileOutputStream fos = new FileOutputStream(tmpFile);

    byte[] buf = new byte[1024];
    int len;
    while ((len = fis.read(buf)) > 0) {
        fos.write(buf, 0, len);
    }       
    fis.close();
    fos.close();
  } catch (IOException io_e) {
    // TODO: handle error
  }
Run Code Online (Sandbox Code Playgroud)

}

MediaStore.EXTRA_OUTPUT在这种情况下,和Uri不是必需的.