1.检查权限
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
2.确保父文件夹存在
在使用file.createNewFile()
方法时,确保file
的父目录文件夹存在,先创建文件夹,再创建文件。
mAudioFile = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/MicRecord/" + System.currentTimeMillis() + ".m4a");
//确保file的父目录文件夹存在
mAudioFile.getParentFile().mkdirs();
mAudioFile.createNewFile();
3.build.gradle [Module:app]
如果经过了第一步和第二步依然报错,将targetSdkVersion
的版本号修改,实测只要低于compileSdkVersion
的版本号就可以