无法从ipad设备中的照片库中检索照片

Ste*_*ear 2 xcode objective-c photolibrary ipad

我正在使用ELCImagePickerController从照片库中检索照片.这在ipad模拟器中工作正常,可以显示照片库中的照片.但它不适用于iPad设备.

这表明失败错误意味着没有照片,即使设备有照片.

我使用了以下内容

ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];        
[library enumerateGroupsWithTypes:ALAssetsGroupAll
                       usingBlock:assetGroupEnumerator 
                     failureBlock:assetGroupEnumberatorFailure];
Run Code Online (Sandbox Code Playgroud)

适用于模拟器,但不适用于ipad设备.

任何人都可以回复,那里有什么问题.

提前致谢.

Ano*_*mie 5

您收到的错误消息表明用户拒绝访问位置服务,拒绝您对该照片库的程序访问权限.由于某些未知原因,Apple使用位置服务权限通过AssetsLibrary框架控制对照片库的访问.进入"设置"应用程序,确保"位置服务"已启用,并且允许您的应用程序使用.

我猜他们为什么这样做是因为他们担心某些应用程序可能以某种方式绕过位置服务被拒绝,方法是从库中加载所有照片并查找EXIF地理标记数据.

  • @Chakradhar:您可以使用[CLLocationManager](http://developer.apple.com/library/ios/documentation/CoreLocation/Reference/CLLocationManager_Class/CLLocationManager/CLLocationManager.html)对事物进行更多控制,但主要是您只需要检查你是否得到一个域名为"ALAssetsLibraryError"的NSError和代码"ALAssetsLibraryAccessUserDeniedError"或"ALAssetsLibraryAccessGloballyDeniedError". (2认同)