У меня есть файл на карте памяти с путем: /storage/7AB3-1EEF/EXTERNAL_eicar-tf.com
С классом File
я могу читать его, но не могу удалить его.
Итак, как мне удалить файл, используя только реальный путь к нему?
Мой код работает, если файл хранится в /storage/0/[file]
Разрешения написаны в манифесте:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Код полностью работает на Android 4.2.2
Я попытался преобразовать файл в URI и удалить его, но у меня появляется сообщение об ошибке «Неизвестный URL».
Uri ur = Uri.fromFile(new File(reports.get(getAdapterPosition()).getPath()));
context.getContentResolver().delete(ur, null, null);
Код моей кнопки:
button_Delete_File.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
File file = new File(reports.get(getAdapterPosition()).getPath()); //Here comes out the described path...
file.delete();
Log.e("File deleted?", reports.get(getAdapterPosition()).getPath());
if (!file.exists()) {
Log.e("Yes", reports.get(getAdapterPosition()).getPath());
} else {
Log.e("No", reports.get(getAdapterPosition()).getPath());
Toast.makeText(context, context.getResources().getString(R.string.delete_file_error), Toast.LENGTH_SHORT).show();
}
}
});