android studio 3.6
dans le manifeste:
val isDelete = saveImagesDir.delete()
ici mon modèle de vue:
public static File getExternalStoragePath(Context context) { File root = context.getExternalFilesDir(null); File savedImagePath = new File(root + "/saved_images"); return savedImagePath; }
et ici la méthode util :
init { Debug.d(TAG, "init: call_loadOperationHistory()") //loadOperationHistory() val saveImagesDir = AndroidUtil.getExternalStoragePath(getApplication<Application>().applicationContext) if (saveImagesDir.exists()) { val isDelete = saveImagesDir.delete() Debug.d( TAG, "init: isDelete = " + isDelete + ", saveImagesDir_delete = " + saveImagesDir ) } }
J'ai réussi à écrire des fichiers dans ce répertoire. Mais je ne peux pas supprimer ce répertoire.
Méthode:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
renvoie toujours false
3 Réponses :
Pouvez-vous s'il vous plaît vérifier la même chose une fois en ajoutant
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
Autorisation de manifester
Pas d'aide. Même résultat
Fournissez les autorisations de lecture et d'écriture et essayez ceci:
implementation 'org.apache.commons:commons-io:1.3.2'
Ajoutez cette ligne dans le fichier gradle pour avoir Apache
File dir = new File("root path"); FileUtils.deleteDirectory(dir);
Si le répertoire contient des fichiers, vous ne pouvez pas le supprimer avec la classe File.
Commencez par le vider.