如何以与 iOS 音乐应用程序相同的方式搜索 iPod 库?我想进行一般查询,返回每个艺术家、专辑和歌曲的结果。例如,如果我搜索 Kenny Chesney,我希望歌曲查询返回所有 Kenny Chesney 歌曲(以及其中包含 Kenny Chesney 的任何歌曲标题或专辑。)当我进行此查询和每个属性的谓词(歌曲标题、专辑标题,艺术家姓名),返回一个空数组。
这是一些代码,可以让您更好地了解我正在尝试完成的工作:
MPMediaPropertyPredicate *songPredicate =
[MPMediaPropertyPredicate predicateWithValue:searchText
forProperty:MPMediaItemPropertyTitle
comparisonType:MPMediaPredicateComparisonContains];
MPMediaPropertyPredicate *albumPredicate =
[MPMediaPropertyPredicate predicateWithValue:searchText
forProperty:MPMediaItemPropertyAlbumTitle
comparisonType:MPMediaPredicateComparisonContains];
MPMediaPropertyPredicate *artistPredicate =
[MPMediaPropertyPredicate predicateWithValue:searchText
forProperty:MPMediaItemPropertyArtist
comparisonType:MPMediaPredicateComparisonContains];
MPMediaQuery *songsQuery = [MPMediaQuery songsQuery];
[songsQuery addFilterPredicate:songNamePredicate];
[songsQuery addFilterPredicate:artistNamePredicate];
[songsQuery addFilterPredicate:albumNamePredicate];
NSLog(@"%@", [songsQuery items]);
我通过分别对每个谓词运行查询来实现这一点,但这似乎非常低效!