如果相册的曲目被分成多个目录,并且导致多个行具有MediaStore
和MediaStore.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_KEY
和ALBUM_ID
的数据时,我看到三个不同的组分别与每个文件夹分开。他们都应该返回相同的ALBUM_KEY
和ALBUM_ID
,但他们不会。 ALBUM_KEY
的{{1}}和a.mp3
与e.mp3
和h.mp3
的{{1}}和b.mp3
不同,但与c.mp3
,{d.mp3
相同1}}和ALBUM_ID
。
只有当我将所有这些文件合并到同一个文件夹中时,它们才会更新以共享相同的ALBUM_KEY
和{{1}}。
这是Google的错误还是故意设计?
答案 0 :(得分:0)
我测试了数据库: 选择*来自专辑ORDER BY album ASC; 是的,专辑的多个键让我相信标签可能不正确。所以我选择了一张专辑,Paolo Nuttine,Caustic Love,使用Audiotagger重做标签,重新扫描设备,关闭数据库并在Razorsql中查询它。表专辑仍显示Caustic Love的多个键,但album_info正确显示。 我还在文件夹中拆分了另一张专辑,但没有看到所描述的行为。 对不起,我无法摆脱光明。