我正在尝试使用最新SDK 4.0中的Assets Library Framework创建自己的UIImagePickerController。这是代码:
-(void)viewDidLoad{
[super viewDidLoad];
groups = [[NSMutableArray alloc] init];
ALAssetsLibrary *assetsLibrary = [[ALAssetsLibrary alloc] init];
NSUInteger groupTypes = ALAssetsGroupAlbum;
ALAssetsLibraryGroupsEnumerationResultsBlock listGroupBlock = ^(ALAssetsGroup *group, BOOL *stop) {
if (group)
[groups addObject:group];
};
ALAssetsLibraryAccessFailureBlock failureBlock = ^(NSError *error) {
NSString *errorTitle = [error localizedDescription];
NSString *errorMessage = [error localizedRecoverySuggestion];
NSString *errorFailureDesc = [error localizedFailureReason];
NSLog(@"Error: %@, Suggestion: %@, Failure desc: %@", errorTitle, errorMessage, errorFailureDesc);
};
[assetsLibrary enumerateGroupsWithTypes:groupTypes usingBlock:listGroupBlock failureBlock:failureBlock];
}
这里的问题是我收到错误,并且从gorups枚举器调用了失败块。这是日志:
错误:全局拒绝访问
建议:此设置可以 在偏好中更改。
失败描述:用户拒绝全部 应用程序访问其媒体。
如SDK 4.0演示中所示,应显示一条消息,表明应用程序需要访问相册,并且用户应该进行大访问。我看不到任何消息,并收到上述错误。是否有人可以告诉我在首选项中应该更改哪些内容以解决问题?
谢谢, 尤
答案 0 :(得分:2)
为了访问此信息,应该打开位置服务!无需重置所有设置。在这种情况下,将出现允许访问对话框。