How can I request albums using MediaBrowser?

I suppose he should do something using the onLoadChildren method, but I donโ€™t know how to get albums, songs or artists through MediaBrowser.

+6
source share
2 answers

If you already have a service that extends MediaBrowserService , you can get any metadata in onLoadChildren .

In your onLoadChildren you should use MediaMetadata :

Contains metadata about an item, such as title, artist, etc.

From which you can get things like artist, title, etc. using MediaDescription :

A simple set of metadata for a multimedia item suitable for display.

 @Override public void onLoadChildren(final String parentMediaId, final Result<List<MediaItem>> result) { for (MediaMetadata track : mMusicProvider.getMusicsByGenre(genre)) { // once you have an instance of MediaMetadata, you can retrieve any data you want: MediaDescription simpleData = track.getDescription(); // or retrieving with a key from its info Bundle: // android.media.metadata.MEDIA_ID // android.media.metadata.TRACK_NUMBER // android.media.metadata.ALBUM // android.media.metadata.GENRE // android.media.metadata.TITLE // android.media.metadata.ARTIST // android.media.metadata.NUM_TRACKS // android.media.metadata.DURATION // android.media.metadata.ALBUM_ART_URI track.getString( ... ); } } 

You can see a clearer implementation of this in this example .

+2
source

You can use MediaMetadataRetriever to retrieve parts from a media file.

Example:

 MediaMetadataRetriever metaRetriver = new MediaMetadataRetriever(); metaRetriver.setDataSource("/sdcard/audio.mp3"); String artist= metaRetriver .extractMetadata(MediaMetadataRetriever.METADATA_KEY_ARTIST); Strng genre = metaRetriver .extractMetadata(MediaMetadataRetriever.METADATA_KEY_GENRE) 
+2
source

All Articles