我想在照片库中保存照片,但在此之前我需要知道是否有足够的可用空间来执行此操作。 我怎么知道是否有足够的可用空间来保存我在照片库中的照片?
我的问题是我需要从服务器下载图像,但决定是否在照片库应用程序中有足够的空间。
谢谢。
答案 0 :(得分:3)
我做了一些检查,Apple似乎没有提供在使用ALAssetLibrary时检查磁盘空间的方法。但它们提供了错误代码,由于磁盘空间问题导致操作失败。
我建议您尝试保存图像,并确保检查完成块中返回的错误并相应地通知用户。
ALAssetsLibraryWriteImageCompletionBlock有一个NSError参数,可以是以下之一
错误代码 AssetsLibrary相关的错误代码
enum {
ALAssetsLibraryUnknownError = -1,
ALAssetsLibraryWriteFailedError = -3300,
ALAssetsLibraryWriteBusyError = -3301,
ALAssetsLibraryWriteInvalidDataError = -3302,
ALAssetsLibraryWriteIncompatibleDataError = -3303,
ALAssetsLibraryWriteDataEncodingError = -3304,
ALAssetsLibraryWriteDiskSpaceError = -3305,
ALAssetsLibraryDataUnavailableError = -3310,
ALAssetsLibraryAccessUserDeniedError = -3311,
ALAssetsLibraryAccessGloballyDeniedError = -3312,
};
如果您之前需要进行一些额外的检查,可以使用注释中提到的方法查找设备上的可用磁盘空间,但不能保证AssetLibrary不会使用不同的逻辑来计算磁盘空间要求。