失败,我使用setImageData通过以下方式来删除照片:setImageData在iOS 8.3版本
[asset setImageData:nil metadata:nil completionBlock:^(NSURL *assetURL, NSError *error)
{
// Do something
}];
此代码在运行iOS 8.2及更早版本的工作完全正常。
但是,在8.3它给人的错误:
@ “错误域= ALAssetsLibraryErrorDomain代码= -3311 \” 用户拒绝访问\”的UserInfo = {0x175061ac0 = NSLocalizedFailureReason用户已经拒绝对应用程序的访问他们的媒体。,NSLocalizedDescription =用户拒绝访问,NSUnderlyingError = 0x17025d700 \“操作无法完成。 (ALAssetsLibraryErrorDomain错误-3311。)\”}”
我试着用一些有效的图像数据,而不是‘无’替换图像数据和元数据字段。不过它给了同样的错误!
是?这一些bug在iOS 8.3版本有任何解决方法在期待
感谢
另一个重要信息:?
[PHPhotoLibrary authorizationStatus] R eturns“PHAuthorizationStatusAuthorized”。 [ALAssetsLibrary authorizationStatus]也返回“ALAuthorizationStatusAuthorized”。
我检查[PHPhotoLibrary authorizationStatus]在我的代码。它给出:“PHAuthorizationStatusAuthorized”。 [ALAssetsLibrary authorizationStatus]也给出了“ALAuthorizationStatusAuthorized”。请注意,相同的代码,没有一个单独的更改在8.2中工作得很好!所以,这与8.2到8.3的变化有关! – bilva
授权查看相同的设置属性。 您是否检查过该资产是“可编辑的” 虽然我没有看到为什么这不适用于8.3但适用于8.2。应该指出的是AssetLibrary很可能在将来的版本中被弃用,而不是PhotoKit框架 –
是的。在尝试删除资产之前,我已经对“可编辑”属性进行了检查。 – bilva