2016-08-20 3 views
0

음악 플레이어를 만들고 싶습니다. 하지만 내부 및 외부 저장소에서 모든 .mp3 파일을 가져올 수 없습니다. 누구든지 나를 도울 수 있습니까? 미리 감사드립니다. 여기 내 코드입니다.안드로이드의 내부 및 외부 저장소에서 모든 .mp3 파일을 얻는 방법

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(); 
} 
+1

시도한 것을 추가하십시오. – sumandas

+1

물론 누락 된 노래를 알려야합니다. – greenapps

답변

1

원하는 모든 mp3 노래를 얻을 수있는 아래 기능을 찾아보십시오.

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(); 
    } 
} 
+0

이 문맥에서 STAR는 무엇입니까? – Kramer

관련 문제