我有
在我的清单文件中,但是尝试创建一个目录时我失败了
Log.d(LOG_STRING, android.os.Environment.getExternalStorageState() );
java.io.File folder = new java.io.File(Environment.getExternalStorageDirectory() + java.io.File.separator + "test");
boolean success = true;
if (!folder.exists()) {
success = folder.mkdir();
}
if (success) {
Log.d(LOG_STRING, "Created directory");
} else {
Log.d(LOG_STRING, "FAILED WHILE CREATING DIRECTORY");
}
外部存储器的状态为“已安装”,但无法创建测试目录,并且输出为“创建创建目录失败”.
浏览手机中的“应用信息”,“我的应用程序”标记为“修改或删除您的USB存储设备的内容”权限.
这可能是什么原因?一些特殊的手机设置?这是一款带有Android 4.3(API18)的三星GT-I9506.要注意的是,getExternalStorageDirectory不在SD卡上,而在内部存储(/ storage / emulated / 0 /)上.
更新:
和同事说话,似乎这台设备在扎根之后已经进行了一些调整(允许一个特定的应用直接写在SD卡上).这可能不值得进一步调查,我会简单地切换到另一台设备.我会保持设备一段时间,如果有人会出现一个答案,我会快速测试是否解决了这个问题.
更新2:(赏金结束)
这个问题仍然没有解决,但是如前所述,这个设备很有可能是非常具体的.在任何路径上都不可能写入外部或内部存储,甚至不能在getExternalCacheDir()返回的路径中.