Skip to content Skip to sidebar Skip to footer

Getting Song Image Very Slow (mediametadataretriever)

I am working on media player application i am getting song image using MediaMetadataRetriever and i am getting image and and i set using Glide but image takes about 7-9 sec to loa

Solution 1:

This method returns ArrayList<CommonModel> .

publicstatic ArrayList<CommonModel> getAllMusicPathList(Context context,String selectAll) {
        ArrayList<CommonModel> musicPathArrList = newArrayList<>();
        UrisongUri= MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;

        CursorcursorAudio= context.getContentResolver().query(songUri, null, null, null, null);
        if (cursorAudio != null && cursorAudio.moveToFirst()) {

            Cursor cursorAlbum;
            if (cursorAudio != null && cursorAudio.moveToFirst()) {

                do {
                    LongalbumId= Long.valueOf(cursorAudio.getString(cursorAudio.getColumnIndex(MediaStore.Audio.Media.ALBUM_ID)));
                    cursorAlbum = context.getContentResolver().query(MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI,
                            newString[]{MediaStore.Audio.Albums._ID, MediaStore.Audio.Albums.ALBUM_ART},
                            MediaStore.Audio.Albums._ID + "=" + albumId, null, null);

                        if(cursorAlbum != null && cursorAlbum.moveToFirst()){
                            StringalbumCoverPath= cursorAlbum.getString(cursorAlbum.getColumnIndex(MediaStore.Audio.Albums.ALBUM_ART));
                            Stringdata= cursorAudio.getString(cursorAudio.getColumnIndex(MediaStore.Audio.Media.DATA));

                            if("selectAll".equals(selectAll))
                            {
                                musicPathArrList.add(newCommonModel(data,albumCoverPath, true));
                            }
                            else
                            {
                                musicPathArrList.add(newCommonModel(data,albumCoverPath, false));
                            }
                        }

                } while (cursorAudio.moveToNext());
            }
        }
        return musicPathArrList;
    }

I hope this helps you.

Post a Comment for "Getting Song Image Very Slow (mediametadataretriever)"