Đây là một chủ đề cũ, nhưng tôi sẽ bổ sung kinh nghiệm của mình, có thể ai đó thấy điều này hữu ích
> 2019-11-12 20:05:50.178 27764-27764/com.strba.myapplicationx I/File: /storage/emulated/0/Android/data/com.strba.myapplicationx/files/Readings/JPEG_20191112_200550_4444350520538787768.jpg//file when it was created
2019-11-12 20:05:58.801 27764-27764/com.strba.myapplicationx I/File: content://com.strba.myapplicationx.fileprovider/my_images/JPEG_20191112_200550_4444350520538787768.jpg //same file when trying to delete it
giải pháp1:
Uri uriDelete=Uri.parse (adapter.getNoteAt (viewHolder.getAdapterPosition ()).getImageuri ());//getter getImageuri on my object from adapter that returns String with content uri
ở đây tôi khởi tạo trình phân giải Nội dung và xóa nó bằng một tham số được truyền của URI đó
ContentResolver contentResolver = getContentResolver ();
contentResolver.delete (uriDelete,null ,null );
giải pháp2 (giải pháp đầu tiên của tôi-từ đầu đến nay tôi biết điều đó): trình giải quyết nội dung tồn tại ...
String path = "/storage/emulated/0/Android/data/com.strba.myapplicationx/files/Readings/" +
adapter.getNoteAt (viewHolder.getAdapterPosition ()).getImageuri ().substring (58);
File file = new File (path);
if (file != null) {
file.delete ();
}
Hy vọng rằng điều này sẽ hữu ích cho ai đó viết mã vui vẻ
inputHandle.getImgPath(id)
là filepath