Chaque fois que j'essaie de lire les informations de carte SD (mémoire amovible), je reçois android.system.ErrnoException: statvfs a échoué: EACCES (Autorisation refusée)lecture/écriture Carte SD amovible (émulateur Android)
I ajoutée autorisations dans le fichier manifeste:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Comme 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
);
}
}
la méthode est appelée ci-dessus lorsque l'activité est de créer (il montre la fenêtre et j'autoriser l'accès)
Mais quand j'essaie d'accéder au périphérique: (Path =/mnt/media_rw/13F4-1C18)
StatFs stat = new StatFs(path);
Je suis cette erreur:
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)
Avez-vous une idée s'il vous plaît comment autoriser l'accès à un APPAREIL AMOVIBLE?
Merci!
Quel type d'information voulez-vous lire? Et cela ne ressemble pas à un chemin vers la carte SD. – greenapps
Taille de l'appareil (total, taille disponible) – Mohamed
Et que voulez-vous écrire? – greenapps