После обновления на Android R мое приложение не может загружать обложки альбомов.
Код ниже работает на Android Q
Uri uri = ContentUris.withAppendedId(MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI, albumId);
Size size = new Size(700, 700);
return contentResolver.loadThumbnail(uri, size, null);
А также код ниже, работающий на Android P и более ранних версиях.
private Bitmap getAlbumArt(int albumId) {
try (Cursor cursor = contentResolver.query(
MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI,
new String[]{MediaStore.Audio.AlbumColumns.ALBUM_ART},
_ID + "=?",
new String[]{String.valueOf(albumId)},
null)) {
if (cursor == null || !cursor.moveToFirst()) {
return null;
}
String artLink = cursor.getString(0);
return BitmapFactory.decodeFile(artLink);
}
}
Проблема в том, что в документации нет информации об извлечении обложек альбомов. После обновления политики доступа к файловому хранилищу это не работает.