Bismillahirrohmaanirrohiim…
Adakalanya kita ingin menghapus folder tertentu di android, karena aplikasi kita menerapkan cache misalnya.
Di bawah ini adalah fungsi atau method yang digunakan untuk menghapus folder, dan semua isinya, termasuk subfolder dan filenya.
berikut ini adalah method yang bisa digunakan:
private void clearCache() { AlertDialog.Builder builder; if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) { builder = new AlertDialog.Builder(this, android.R.style.Theme_Material_Dialog_Alert); } else { builder = new AlertDialog.Builder(this); } builder.setTitle("Delete cache") .setMessage("Do you really want to delete all caches?") .setIcon(android.R.drawable.ic_dialog_alert) .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { removeAudio(); } }) .setNegativeButton(android.R.string.no, null).show(); }
fungsi di atas untuk memberikan alert kepada user, apakah yakin akan menghapus. Karena bisa jadi hanya kepencet.
Fungsi kedua:
private void removeAudio() { File dir = new File(getFilesDir(), "audio"); if (dir.exists()) { deleteRecursive(dir); } Toast.makeText(this, "Done", Toast.LENGTH_SHORT).show(); }
fungsi ketiga:
private void deleteRecursive(File fileOrDirectory) { if (fileOrDirectory.isDirectory()) for (File child : fileOrDirectory.listFiles()) deleteRecursive(child); fileOrDirectory.delete(); }
Nah, cukup mudah kan….
Silahkan dicoba.