From abc2819328c32f2f66506d342c5f560da5107889 Mon Sep 17 00:00:00 2001 From: Marco Nelissen Date: Thu, 18 Mar 2010 17:10:38 -0700 Subject: [PATCH] Include "album artist" when inserting items in the media provider. Change-Id: Ic34e2d54557409866dc35c29ee397afdfe874762 --- core/java/android/provider/MediaStore.java | 7 +++++++ media/java/android/media/MediaScanner.java | 6 +++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/core/java/android/provider/MediaStore.java b/core/java/android/provider/MediaStore.java index dda90186b4332..1d27828d85c63 100644 --- a/core/java/android/provider/MediaStore.java +++ b/core/java/android/provider/MediaStore.java @@ -869,6 +869,13 @@ public final class MediaStore { */ public static final String ARTIST = "artist"; + /** + * The artist credited for the album that contains the audio file + *

Type: TEXT

+ * @hide + */ + public static final String ALBUM_ARTIST = "album_artist"; + /** * A non human readable key calculated from the ARTIST, used for * searching, sorting and grouping diff --git a/media/java/android/media/MediaScanner.java b/media/java/android/media/MediaScanner.java index 1047fa49c8e9c..e9bcafeef8506 100644 --- a/media/java/android/media/MediaScanner.java +++ b/media/java/android/media/MediaScanner.java @@ -634,7 +634,11 @@ public class MediaScanner } else if (MediaFile.isImageFileType(mFileType)) { // FIXME - add DESCRIPTION } else if (MediaFile.isAudioFileType(mFileType)) { - map.put(Audio.Media.ARTIST, (mArtist != null && mArtist.length() > 0 ? mArtist : MediaStore.UNKNOWN_STRING)); + String artist = mArtist != null && mArtist.length() > 0 ? + mArtist : MediaStore.UNKNOWN_STRING; + map.put(Audio.Media.ARTIST, artist); + map.put(Audio.Media.ALBUM_ARTIST, mAlbumArtist != null && + mAlbumArtist.length() > 0 ? mAlbumArtist : artist); map.put(Audio.Media.ALBUM, (mAlbum != null && mAlbum.length() > 0 ? mAlbum : MediaStore.UNKNOWN_STRING)); map.put(Audio.Media.COMPOSER, mComposer); if (mYear != 0) {