Get Genre_id And Audio_id From Audio_genres_map From Mediastore
I want to retrieve whole audio_genres_map table from mediastore in one query. I have all the audio info and genre info but the missing piece is the mapping. I am able to do it in m
Solution 1:
managed to solve this using following query
String[] genresProjection = {
Audio.Genres.Members.AUDIO_ID,
Audio.Genres.Members.GENRE_ID
};
context.getContentResolver().query(Uri.parse("content://media/external/audio/genres/all/members"), genresProjection, null, null, null);
Solution 2:
Or to retrieve all genres using MediaStore.Audio
public Cursor getGenrecursor(Context context) {
ContentResolvercr= context.getContentResolver();
Uriuri= MediaStore.Audio.Genres.getContentUri("external");
Stringgenre= MediaStore.Audio.Genres.NAME;
final String[] columns = { "_id", genre };
return cr.query(uri, columns, null, null, null);
}
Solution 3:
and to expand your question, using the genre_id to bring back further details
public Cursor getgenre_TrackCursor(Context context, long genreID) {
finalStringtrack_id= MediaStore.Audio.Genres.Members._ID;
finalStringtrack_no= MediaStore.Audio.Genres.Members.TRACK;
finalStringtrack_name= MediaStore.Audio.Genres.Members.TITLE;
finalStringartist= MediaStore.Audio.Genres.Members.ARTIST;
finalStringduration= MediaStore.Audio.Genres.Members.DURATION;
finalStringalbum= MediaStore.Audio.Genres.Members.ALBUM;
finalStringcomposer= MediaStore.Audio.Genres.Members.COMPOSER;
finalStringyear= MediaStore.Audio.Genres.Members.YEAR;
finalStringpath= MediaStore.Audio.Genres.Members.DATA;
finalContentResolverresolve= context.getContentResolver();
Uriuri= MediaStore.Audio.Genres.Members.getContentUri("external",
genreID);
final String[] columns = { track_id, track_no, artist, track_name,
album, duration, year };
return resolve.query(uri, columns, null, null, null);
}
Post a Comment for "Get Genre_id And Audio_id From Audio_genres_map From Mediastore"