繁体   English   中英

从mediastore的audio_genres_map获取genre_id和audio_id

[英]get genre_id and audio_id from audio_genres_map from mediastore

我想在一个查询中从Mediastore检索整个audio_genres_map表。 我拥有所有音频信息和类型信息,但缺少的部分是映射。 我可以在多个查询中做到这一点。 我想实现一个查询

使用以下查询设法解决了这个问题

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);

或使用MediaStore.Audio检索所有流派

    public Cursor getGenrecursor(Context context) {
    ContentResolver cr = context.getContentResolver();
    Uri uri = MediaStore.Audio.Genres.getContentUri("external");
    String genre = MediaStore.Audio.Genres.NAME;
    final String[] columns = { "_id", genre };
    return  cr.query(uri, columns, null, null, null);
}

并使用genre_id扩展问题,以扩展您的问题

        public Cursor getgenre_TrackCursor(Context context, long genreID) {
    final String track_id = MediaStore.Audio.Genres.Members._ID;
    final String track_no = MediaStore.Audio.Genres.Members.TRACK;
    final String track_name = MediaStore.Audio.Genres.Members.TITLE;
    final String artist = MediaStore.Audio.Genres.Members.ARTIST;
    final String duration = MediaStore.Audio.Genres.Members.DURATION;
    final String album = MediaStore.Audio.Genres.Members.ALBUM;
    final String composer = MediaStore.Audio.Genres.Members.COMPOSER;
    final String year = MediaStore.Audio.Genres.Members.YEAR;
    final String path = MediaStore.Audio.Genres.Members.DATA;
    final ContentResolver resolve = context.getContentResolver();
    Uri uri = 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);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM