简体   繁体   中英

How to get all .mp3 files from internal and external storage in android

i want to make a music player. but i couldn't get all the .mp3 files from internal and external storage. can anyone help me please. Thanks in advance. here is my code.

    public void getListOfSong1(Context context) {
    SongData.cart.clear();
    Cursor c = context.getContentResolver().query(Media.INTERNAL_CONTENT_URI, null, "is_music != 0", null, null);
    c.moveToFirst();
    while (c.moveToNext()) {
        SongData songData = new SongData();
        int _id = c.getColumnIndex(MostAndRecentSongTableHelper.ID);
        String title = c.getString(c.getColumnIndex(MostAndRecentSongTableHelper.TITLE));
        String artist = c.getString(c.getColumnIndex(MostAndRecentSongTableHelper.ARTIST));
        String album = c.getString(c.getColumnIndex(FavoriteSongsTableHelper.ALBUM));
        long duration = c.getLong(c.getColumnIndex(MostAndRecentSongTableHelper.DURATION));
        String data = c.getString(c.getColumnIndex("_data"));
        long albumId = c.getLong(c.getColumnIndex(MostAndRecentSongTableHelper.ALBUM_ID));
        String composer = c.getString(c.getColumnIndex("composer"));
        songData.setId(_id);
        songData.setSongTitle(title);
        songData.setAlbum(album);
        songData.setArtist(artist);
        songData.setDuration(duration);
        songData.setSongPath(data);
        songData.setAlbumId(albumId);
        if (!data.endsWith(".mp3")) {
            if (!data.endsWith(".MP3")) {
            }
        }
        this.listOfSongs.add(songData);
    }
    c.close();
}

Please find the function below which is able to get the all mp3 songs which you want.

public void getMp3Songs() {

    Uri allsongsuri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
    String selection = MediaStore.Audio.Media.IS_MUSIC + " != 0";

    cursor = managedQuery(allsongsuri, STAR, selection, null, null);

    if (cursor != null) {
        if (cursor.moveToFirst()) {
            do {
                song_name = cursor
                        .getString(cursor
                                .getColumnIndex(MediaStore.Audio.Media.DISPLAY_NAME));
                int song_id = cursor.getInt(cursor
                        .getColumnIndex(MediaStore.Audio.Media._ID));

                String fullpath = cursor.getString(cursor
                        .getColumnIndex(MediaStore.Audio.Media.DATA));
                fullsongpath.add(fullpath);

                album_name = cursor.getString(cursor
                        .getColumnIndex(MediaStore.Audio.Media.ALBUM));
                int album_id = cursor.getInt(cursor
                        .getColumnIndex(MediaStore.Audio.Media.ALBUM_ID));

                artist_name = cursor.getString(cursor
                        .getColumnIndex(MediaStore.Audio.Media.ARTIST));
                int artist_id = cursor.getInt(cursor
                        .getColumnIndex(MediaStore.Audio.Media.ARTIST_ID));


            } while (cursor.moveToNext());

        }
        cursor.close();
        db.closeDatabase();
    }
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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