每次我尝试读取SD卡(可移动存储)的信息,我得到android.system.ErrnoException:statvfs失败:EACCES(拒绝)读/写可移动SD卡(Android模拟器)
我在清单文件添加权限:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
作为的minSdkVersion> 23
public static void verifyStoragePermissions(Activity activity) {
// Check if we have write permission
int permission = ActivityCompat.checkSelfPermission(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE);
if (permission != PackageManager.PERMISSION_GRANTED) {
// We don't have permission so prompt the user
ActivityCompat.requestPermissions(
activity,
PERMISSIONS_STORAGE,
REQUEST_EXTERNAL_STORAGE
);
}
}
的方法,当活动是创建上面被称为(它示出了在弹出我允许接入)
但是,当我尝试访问该设备:(路径=到/ mnt/media_rw/13F4-1C18)
StatFs stat = new StatFs(path);
我得到这个错误:
java.lang.IllegalArgumentException: Invalid path: /mnt/media_rw/13F4-1C18
at android.os.StatFs.doStat(StatFs.java:46)
at android.os.StatFs.<init>(StatFs.java:39)
.....
Caused by: android.system.ErrnoException: statvfs failed: EACCES (Permission denied)
at libcore.io.Posix.statvfs(Native Method)
at libcore.io.BlockGuardOs.statvfs(BlockGuardOs.java:304)
at android.system.Os.statvfs(Os.java:506)
at android.os.StatFs.doStat(StatFs.java:44)
at android.os.StatFs.<init>(StatFs.java:39)
你有什么想法,请如何允许访问可移动设备?
谢谢!
你想读什么样的信息?这看起来不像是SD卡的路径。 – greenapps
设备的尺寸(总数,可用尺寸) – Mohamed
你想写什么? – greenapps