我有一个应用程序,我想将文件写入SD卡。
SD卡的路径是
的/ mnt / extsd
当我尝试使用mkdirs()创建文件或目录时,它返回false。
我也正在
打开失败:EACCES(权限被拒绝)
我的平板电脑中安装了ES File explorer。它能够将文件复制到SD卡。我不知道它是怎么做的。
请帮忙!!提前谢谢。
答案 0 :(得分:1)
修改强>
使用
String extsdPath = System.getenv("SECONDARY_STORAGE"); // will return you /mnt/extsd/
即使在那之后,
转到adb shell中的终端点击“ls -l / mnt /”命令 如果
d---rwxr-x system media_rw 1970-01-01 05:30 extsd
d---rwxr-x system sdcard_rw 1970-01-01 05:30 sdcard
如果是 media_rw 组,则您的应用程序无权编写“/ mnt / extsd /”。该权限仅授予系统应用程序。这是Google报告的错误。
参考链接:google group post
答案 1 :(得分:1)
问题出在果冻豆上
这项工作对我来说
String path = null;
if (android.os.Build.VERSION.SDK_INT < Build.VERSION_CODES.KITKAT){
path = getCacheDir() + File.separator + "name";
} else{
path = Environment.getExternalStorageDirectory() + File.separator + "name";
}
答案 2 :(得分:0)
将权限赋予/ mnt / media_rw / external_SD:
mount -o remount,rw /
chmod 770 /mnt/media_rw/.
mount -o remount,ro /