我正在尝试在ios中获取iTunes资料库。 并尝试在5天内检索前10首歌曲。
你告诉我怎么办?这是我的代码。 MPMediaPropertyPredicate不是正确答案......我想。MPMediaQuery *everything = [[MPMediaQuery alloc] init];
NSLog(@"Logging items from a generic query...");
NSArray *itemsFromGenericQuery = [everything items];
for (MPMediaItem *song in itemsFromGenericQuery) {
NSString *songTitle = [song valueForProperty: MPMediaItemPropertyTitle];
NSString *artistName = [song valueForProperty:MPMediaItemPropertyArtist];
NSString *lastPlayeddate = [song valueForProperty:MPMediaItemPropertyLastPlayedDate];
NSString *playCount = [song valueForProperty:MPMediaItemPropertyPlayCount];
NSLog (@"%@", songTitle);
text.text = [NSString stringWithFormat:@"%@\n%@ %@ %@ %@", text.text, songTitle, artistName, lastPlayeddate, playCount];
}
一切顺利。
答案 0 :(得分:0)
显然,播放次数被视为“用户定义”键,因此无法在MPMediaPropertyPredicate
中使用
您必须手动迭代歌曲并检索这些属性。
enumerateValuesForProperties:usingBlock:
可能是您最有效的选择。
http://developer.apple.com/library/ios/documentation/mediaplayer/reference/MPMediaEntity_ClassReference/Reference/Reference.html#//apple_ref/occ/instm/MPMediaEntity/enumerateValuesForProperties:usingBlock: