Jak se dostat miniaturu z audio url v android pomocí glide

0

Otázka

Snaží načíst audio miniatur z url s glide, ale nefunguje

Glide
                .with(this)
                .load("http://api.boleiachain.com/upload/musictest.mp3")
                .apply(options)
                .centerCrop()
                .placeholder(R.drawable.ic_loading)
                .into(civ_image);

a já jsem se snažil to

public  Bitmap coverpicture(String path) {

        Bitmap bitmap=null;
        MediaMetadataRetriever mediaMetadataRetriever = new MediaMetadataRetriever();
        mediaMetadataRetriever.setDataSource(path, new HashMap<String, String>());
        try {
            final byte[] coverImage = mediaMetadataRetriever.getEmbeddedPicture();
             bitmap= BitmapFactory.decodeByteArray(coverImage, 0, coverImage.length);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return bitmap;

    }

Glide
                .with(this)
                .load(coverpicture("http://api.boleiachain.com/upload/musictest.mp3"))
                .apply(options)
                .centerCrop()
                .placeholder(R.drawable.ic_loading)
                .into(civ_image);

to funguje, ale se zpožděním, což není dobré praxe v recyclerView adaptér

android audio url
2021-11-23 03:44:23
1

Nejlepší odpověď

1

Můžete mezipaměti bitmap a zkontrolujte, zda vyrovnávací paměť existuje před voláním metoda coverPicture

  ....load(getCoverpicture("http://api.boleiachain.com/upload/musictest.mp3"))



HashMap<String,Bitmap> cache = new HashMap<String,Bitmap>();
public  Bitmap getCoverpicture(String path) {
    if(cache.containsKey(path)){ return cache.get(path);
    }else{
        Bitmap bitmap = coverpicture(path);
        cache.put(path,bitmap);
        return bitmap;
    }
}

To má některé syntaktické chyby

2021-11-26 11:34:53

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................