MediaStore中错误地存在多个值(当只需要一个值时)

时间:2014-10-09 11:08:05

标签: android mediastore

如果相册的曲目被分成多个目录,并且导致多个行具有MediaStoreMediaStore.Audio.Media.ALBUM_ID的不同值,则MediaStore.Audio.Media.ALBUM_KEY中的相同相册似乎被分成多行。 /mnt/sdcard/X/a.mp3 /mnt/sdcard/X/b.mp3 /mnt/sdcard/X/c.mp3 /mnt/sdcard/X/d.mp3 /mnt/sdcard/Y/e.mp3 /mnt/sdcard/Y/f.mp3 /mnt/sdcard/Y/g.mp3 /mnt/sdcard/Z/h.mp3 /mnt/sdcard/Z/i.mp3 /mnt/sdcard/Z/j.mp3 列,即使曲目全部来自同一专辑(同一艺术家)。

例如,请考虑以下文件路径:

MediaStore.Audio.Media.ALBUM_ID

请注意,mp3文件由三个不同的文件夹分隔," X"," Y"和" Z"。所有上述曲目的专辑标题是相同的;他们都来自同一位艺术家的同一张专辑。

但是,当我检索MediaStore.Audio.Media.ALBUM_KEYALBUM_ID的数据时,我看到三个不同的组分别与每个文件夹分开。他们都应该返回相同的ALBUM_KEYALBUM_ID,但他们不会。 ALBUM_KEY的{​​{1}}和a.mp3e.mp3h.mp3的{​​{1}}和b.mp3不同,但与c.mp3,{d.mp3相同1}}和ALBUM_ID

只有当我将所有这些文件合并到同一个文件夹中时,它们才会更新以共享相同的ALBUM_KEY和{{1}}。

这是Google的错误还是故意设计?

1 个答案:

答案 0 :(得分:0)

我测试了数据库: 选择*来自专辑ORDER BY album ASC; 是的,专辑的多个键让我相信标签可能不正确。所以我选择了一张专辑,Paolo Nuttine,Caustic Love,使用Audiotagger重做标签,重新扫描设备,关闭数据库并在Razorsql中查询它。表专辑仍显示Caustic Love的多个键,但album_info正确显示。 我还在文件夹中拆分了另一张专辑,但没有看到所描述的行为。 对不起,我无法摆脱光明。