首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用MPMediaQuery加载播放列表

用MPMediaQuery加载播放列表
EN

Stack Overflow用户
提问于 2012-05-11 14:43:59
回答 1查看 839关注 0票数 1

在我的应用程序中,我想将用户播放列表保存在一个plist文件中,并在应用程序启动时加载这个播放列表。

这是我用来保存的代码:

代码语言:javascript
复制
if (self.backgroundMusicItems) {
    NSMutableArray *songsID = [[NSMutableArray alloc] initWithCapacity:0];
    MPMediaItem *item;
    for (item in self.backgroundMusicItems.items) {
        NSNumber *songId = [item valueForProperty:MPMediaItemPropertyPersistentID];
        [songsID addObject:songId];
    }
    NSString *documentdir = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
    NSString *filePath = [documentdir stringByAppendingPathComponent:@"playlist.plist"];
    [songsID writeToFile:filePath atomically:YES];
}

这是我用来加载的代码:

代码语言:javascript
复制
NSString *documentdir = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
NSString *filePath = [documentdir stringByAppendingPathComponent:@"playlist.plist"];

NSArray *myArray = [[NSArray alloc] initWithContentsOfFile:filePath];

NSMutableSet *predicates = [[NSMutableSet alloc] initWithCapacity:0];

if (myArray.count > 0) {
    NSNumber *songId;
    for (songId in myArray) {
        MPMediaPropertyPredicate *predicate = [MPMediaPropertyPredicate predicateWithValue:songId forProperty:MPMediaItemPropertyPersistentID];
        [predicates addObject:predicate];
    }
    MPMediaQuery *query = [[MPMediaQuery alloc] initWithFilterPredicates:predicates];

    NSArray *mediaItems = [query items];
    if (mediaItems.count > 0) [GameOptions sharedClass].backgroundMusicItems = [[MPMediaItemCollection alloc] initWithItems:mediaItems];
}

myArray包含两个项,但查询项方法返回0项。我哪里错了??

EN

回答 1

Stack Overflow用户

发布于 2012-10-12 11:50:02

您要的是MPMediaItemPropertyPersistentID设置为song1和song2值的歌曲--这将始终返回零结果,因为从逻辑上讲,任何歌曲都不可能匹配两个不同的MPMediaItemPropertyPersistentID。

您需要对每个持久id运行一个查询。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10553599

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档