2014-07-10 40 views
0

中獲取MEDIA(MediaStore.Audio.Media)的封面藝術所以我試圖構建一個非常簡單的音樂播放器(我剛剛在幾天前開始使用Android)。直到現在我編寫了檢索歌曲信息的代碼。但是,我無法檢索每個媒體的專輯封面。 我知道MediaStore.Audio.Album中有一列ALBUM_ART(我試圖爲每張專輯檢索專輯封面並且它工作正常),但是我想將專輯封面分配給每首歌曲,但我不知道該怎麼做它。 網上衝浪,我發現這樣的代碼:如何在Android(API 19)

Uri sArtworkUri = Uri.parse("content://media/external/audio/albumart"); 
Uri albumArtUri = ContentUris.withAppendedId(sArtworkUri, albumId); 

但它似乎沒有工作,我得到的是null。有人可以向我解釋如何檢索每首歌曲的專輯封面嗎?

回答

0

String [] columns = {android.provider.MediaStore.Audio.Albums._ID, android.provider。 MediaStore.Audio.Albums.ALBUM,android.provider.MediaStore.Audio.Albums.ALBUM_ART}; int album_column_index = 0; Cursor cursor = getActivity()。managedQuery( MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI,columns,null, null,null);

 if (cursor.moveToFirst()) { 
      do { 


       arrAlbumNAme.add(cursor.getString(cursor 
         .getColumnIndex(android.provider.MediaStore.Audio.Albums.ALBUM))); 
       album_column_index = cursor.getColumnIndexOrThrow(android.provider.MediaStore.Audio.Albums._ID); 
       //cursor.moveToPosition(position); 
       albumID = cursor.getInt(album_column_index); 
       Uri sArtworkUri = Uri.parse("content://media/external/audio/albumart"); 
       Uri uri = ContentUris.withAppendedId(sArtworkUri, albumID); 
       arrAlbumArt.add(cursor.getString(cursor 
         .getColumnIndex(android.provider.MediaStore.Audio.Albums.ALBUM_ART))); 

      } while (cursor.moveToNext()); 
     } 

內部適配器 holder.image_icon.setImageUri(arrAlbumArt.get(位置));

相關問題