14

在尝试使用图像选择器访问照片库之前,有人遇到过这个错误吗?

NSInvalidArgumentException  Cannot set metadata in read-only store.

任何有关实际出了什么问题的建议以及有关如何解决此问题的建议将不胜感激。

错误堆栈的快照如下所示

在此处输入图像描述

4

2 回答 2

6

开发论坛上有一个帖子可能会有所帮助(尽管 iOS 5 已发布,但它奇怪地标记为“Apple Confidential Information”)。

我们也看到了这些。我的第一印象是它与未连接到 iCloud 时使用 PhotoStream 有关,但“recordVersion:forStore:”表明它正在尝试将照片库升级到 5.0 格式(它可能无法作为非特权/沙盒/etc 进程)。

除了“与 iTunes 同步”之外,以下内容可能会解决此问题:

  • 启动照片
  • 启动相机并拍照

这似乎在 OS 5.0.1 中并未得到修复,但报告数量已大幅减少,这表明人们的照片库最终正在升级。

于 2011-11-28T18:12:32.110 回答
5

这个问题仅限于 IOS5 - 在开发论坛上向 Apple 询问过,但没有答案。我一直无法复制自己,但是..

我的 beta 测试人员报告说,与 iTunes 同步似乎可以清除这个错误——所以我的猜测是 iTunes 同步正在修复权限问题。

我将此代码包装在@try/@catch 中,但它仍然崩溃:(。

- (void)showImagePicker {
 UIImagePickerController *imagePicker = [[[UIImagePickerController alloc] init] autorelease];     
 imagePicker.delegate = self;
 imagePicker.hidesBottomBarWhenPushed = YES;
 imagePicker.allowsEditing = YES;
 imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
 [tabController presentModalViewController:imagePicker animated:YES];  // sometimes crash 
}

当我调用 UIImageWriteToSavedPhotosAlbum 时,其他用户也很少/不可重现地发生相同的崩溃

于 2011-10-16T10:10:43.807 回答