Хорошо, я обнаружил еще одно специфическое обстоятельство, при котором появляется эта ошибка:
- Попытка сохранить UIImage в фото / фотоальбом с помощью UIImageWriteToSavedPhotosAlbum.
- iOS запрашивает у пользователя разрешение на доступ к библиотеке фотографий - пользователь отказывает (!)
В завершенииSelector предоставленный NSError затем содержит ALAssetsLibrary ALAssetsLibraryDataUnavailableError.
Вы могли бы подумать, что ошибка будет чем-то вроде ALAssetsLibraryAccessUserDeniedError или ALAssetsLibraryAccessGloballyDeniedError. Но это не так. Это просто ALAssetsLibraryDataUnavailableError.
Это было протестировано на iPhone 5, iOS 6.0.1. Может быть, это не ошибка, или они когда-нибудь это исправят.
В любом случае, «исправить» - это заставить пользователя перейти в «Настройки» → «Конфиденциальность» → «Фотографии» → включить приложение здесь. Локализованное сообщение с предложением исправления является НЕПРАВИЛЬНЫМ - оно предлагает открыть приложение Photos. Никакой другой информации об ошибке не дано. В любом случае, пользователь, вероятно, должен знать, что он / она нажал кнопку «Запретить» - тем не менее, они могли сделать это по ошибке, и позже они не знали бы, что происходит.