Попытка заменить устаревший код для извлечения изображений из Uri
MediaStore # Images # Media # getBitmap (contentResolver, uri)
новым
ImageDecoder # createSource (contentResolver, uri)
Вот мой новый код:
Bitmap thumbNail;
if (Build.VERSION.SDK_INT < 28) {
thumbNail = MediaStore.Images.Media.getBitmap(
getContentResolver(),
data.getData()
);
} else {
ImageDecoder.Source source = ImageDecoder.createSource(getContentResolver(), data.getData());
thumbNail = ImageDecoder.decodeBitmap(source);
}
Но я заметил, что каждый раз, когда я пытался использовать его для обработки изображение относительно большого размера от 2 МБ до 3,5 МБ. Приложение вылетает, какое сообщение
Канал неисправно поврежден и будет удален!
Может я что-то не так делаю или он не подходит для обработки больших файлов изображений? Приложение работает нормально, когда я решаю использовать устаревший метод:
MediaStore # Images # Media # getBitmap (contentResolver, uri).