我确信我在manifest.xml中添加了WRITE_EXTERNAL_STORAGE权限,并且我还使用Environment.getExternalStorageState()检查了SD卡的状态,确保该值为Environment.MEDIA_MOUNTED,而不是Environment.MEDIA_SHARED或其他任何内容。即使通过了这些检查,当我尝试创建新文件时仍然存在权限被拒绝错误!
此错误仅发生在Nexus One上。因为我自己没有Nexus One,我无法直接调试它。有人能帮助我吗?
答案 0 :(得分:3)
我想你应该试试这个。不确定它是否能解决您的问题:
Environment.getExternalStorageDirectory()
示例:
String path= Environment.getExternalStorageDirectory()+"/yourfilename/";
File file = new File(path);
if(!file.exists())
file.mkdirs();
答案 1 :(得分:3)
就我而言,Environment.MEDIA_MOUNTED返回false并且引发了IOException(权限被拒绝),因为我忘记将SD卡添加到我的Android虚拟设备。