MediaRecorder 问题 - 当我尝试写入 sdcard 时抛出 FileNotFoundException

Posted

技术标签:

【中文标题】MediaRecorder 问题 - 当我尝试写入 sdcard 时抛出 FileNotFoundException【英文标题】:MediaRecorder issue - throws FileNotFoundException when I try to write to sdcard 【发布时间】:2012-01-31 01:49:58 【问题描述】:

这是引发的确切异常:

java.io.FileNotFoundException: /mnt/sdcard/example.mp4 (Permission denied)

我从 here 复制并粘贴了示例代码。此外,我还添加了这段代码来正确格式化我的路径:

private String sanitizePath(String path) 
    if (!path.startsWith("/")) 
      path = "/" + path;
    
    if (!path.contains(".")) 
      path += ".3gp";
    
    return Environment.getExternalStorageDirectory().getAbsolutePath() + path;
  

以下是我的清单中包含的权限:

<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECORD_VIDEO" />  
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.STORAGE" />


<uses-feature android:name="android.hardware.camera"/>
<uses-feature android:name="android.hardware.camera.front"/>

我是遗漏了一些完全明显的东西还是更多的东西?

【问题讨论】:

【参考方案1】:

您可能需要检查手机是否处于“大容量存储模式”。 在此模式下连接 USB 数据线时,您无法访问 /sdcard 上的文件。

【讨论】:

以上是关于MediaRecorder 问题 - 当我尝试写入 sdcard 时抛出 FileNotFoundException的主要内容,如果未能解决你的问题,请参考以下文章

MediaRecorder - 记录通话应用程序

Safari 14.1.2 - 找不到变量:MediaRecorder

MediaRecorder:停止失败 -1007

如何将 MediaRecorder 中的视频方向更改为纵向

Android mediaRecorder Stop 失败 - 尝试指定设备的最高记录质量

通过 MediaRecorder 录制音频