我发现当位置服务被禁用或未授予我的应用程序时,使用 ALAssetsLibrary 会出错。
我正在使用enumerateGroupsWithTypes:usingBlock:failureBlock:并且文档说:
特别注意事项
如果用户未启用定位服务(在设置 > 常规中),此方法将失败并出现错误ALAssetsLibraryAccessGloballyDeniedError 。
是否可以从照片中细化我要使用的元数据,所以我仍然可以从图书馆中获取它们?我实际上不需要拍摄照片的位置。
我发现当位置服务被禁用或未授予我的应用程序时,使用 ALAssetsLibrary 会出错。
我正在使用enumerateGroupsWithTypes:usingBlock:failureBlock:并且文档说:
特别注意事项
如果用户未启用定位服务(在设置 > 常规中),此方法将失败并出现错误ALAssetsLibraryAccessGloballyDeniedError 。
是否可以从照片中细化我要使用的元数据,所以我仍然可以从图书馆中获取它们?我实际上不需要拍摄照片的位置。
我们发现iOS 6中没有位置权限请求。可能iOS 6对Photos有其他的隐私控制。所以你不需要询问位置许可。我们的解决方案是检查 [[UIDevice currentDevice]systemVersion] 并且仅在 iOS >= 6 时使用 ALAssetsLibrary。
不,这是不可能的(但是?这在 iOS 5.1 中是不可能的)
在没有位置警告的情况下访问库中的照片的唯一方法是呈现 UIImagePickerController,但显然这对于需要显示自定义画廊或一次访问多张图片的大多数项目没有多大帮助。