Я переместил изображение из каталога загрузки в DCIM с помощью приложения с именем 'Files'.
Курсор получает оба пути, новый и старый.
getApplication<Application>().applicationContext.contentResolver.query(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
null,//projection,
null,//selection,
null,//selectionArgs,
null//sortOrder
)?.use { cursor ->
while (cursor.moveToNext()) {
DatabaseUtils.dumpCurrentRow(cursor)
}
}
Новая запись: 1006 *
10 {
instance_id=null
duration=null
description=null
picasa_id=null
latitude=null
date_expires=null
_display_name=240x135.7.jpg
datetaken=null
mime_type=image/jpeg
_id=38
_data=/storage/1B07-1103/DCIM/240x135.7.jpg
_hash=null
_size=8037
title=240x135.7
width=240
longitude=null
is_trashed=0
group_id=-1332787703
document_id=null
is_pending=0
date_added=1596322655
mini_thumb_magic=null
primary_directory=DCIM
secondary_directory=null
isprivate=null
original_document_id=null
bucket_id=-1508016675
relative_path=DCIM/
}
Старая запись все еще существует:
5 {
instance_id=null
duration=null
description=null
picasa_id=null
latitude=null
orientation=null
height=135
is_drm=0
bucket_display_name=Download
owner_package_name=com.android.chrome
volume_name=external_primary
date_modified=1596220214
date_expires=null
_display_name=240x135.7.jpg
datetaken=null
mime_type=image/jpeg
_id=29
_data=/storage/emulated/0/Download/240x135.7.jpg
_hash=null
_size=8037
title=240x135.7
width=240
longitude=null
is_trashed=0
group_id=-1332787703
document_id=null
is_pending=0
date_added=1596220214
mini_thumb_magic=null
primary_directory=Download
secondary_directory=null
isprivate=null
original_document_id=null
bucket_id=540528482
relative_path=Download/
}
Как удалить старую запись с указанием пути в неправильное место? Первая запись приводит к ошибке при попытке получить картинку:
imageView.setImageURI(
ContentUris.withAppendedId(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
cursor.getLong(
cursor.getColumnIndex(
MediaStore.Images.Media._ID
)
)
)
Или может быть какой-то способ проверить удаленный файл или нет?
Тест Android API эмулятора 29.