您的位置:首页 > 其它

关于AssetsLibrary无法获取本地所有相册的问题

2012-11-19 19:35 337 查看
在我的前一篇博客中提到了如何为iPhone应用增加照片多选功能,将这个功能应用到实际生产环境中遇到了一个问题:

本地有两个相册:相机胶卷和照片图库。后者是通过同步产生的。

在如下代码中:

dispatch_async(dispatch_get_main_queue(), ^{
        [_assetsLibrary enumerateGroupsWithTypes:ALAssetsGroupAll usingBlock:^(ALAssetsGroup *group, BOOL *stop) {
            if (group) {
                [self.groupArray addObject:group];
                [self performSelectorOnMainThread:@selector(reloadTableView) withObject:nil waitUntilDone:YES];
            }
        } failureBlock:^(NSError *error) {
            NSLog(@"Group not found!\n");
            self.title = @"访问照片失败"; // Photo-access is disabled.
        }];
    });


通过枚举ALAssetsGroupAll类型的组别来统计相册数目,结果一直只有1个。

我很困惑,因为我用的是All选项了。琢磨了很久,终于在一个细节上找到了原因:



有点(代码)洁癖的我觉得Line 44很别扭,为什么要空一行呢,我忍不住习惯性要把这一行删掉——结果发现这是库文件。于是我顺着Line 44往后看:



后面是换行的注释,“exception”、“not”等单词晃亮了我——原来ALAssetsGroupLibrary不包括在内!

这个ALAssetsGroupAll的后缀“All”名不副实啊⋯⋯
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐