是否可以在没有PHAsset的情况下将照片存储在iPhone上?

时间:2015-09-07 14:32:45

标签: ios iphone swift photos phasset

是否可以在不使用PHAsset的情况下将照片存储在iPhone上?

这是因为使用PHAsset迫使我使用这种方法:

declare @param decimal(10,5)
set @param = cast('1.15' as decimal(10,5))
exec Test @param

此方法需要执行时间。

我只想直接从存储它们的文件夹中获取图像。

1 个答案:

答案 0 :(得分:1)

无法直接访问这些文件,因为它们不在您的应用程序的Sandbox中。 使用方法时需要花费时间

PHImageManager.defaultManager().requestImageForAsset( ... )

是文件被加载到内存中并解码为UIImage。 为避免这种情况,请查看方法

PHImageManager.defaultManager(). requestImageDataForAsset( ... )

此方法将文件加载为NSData。

注意:如果您要构建照片应用程序,用户可以在照片之间滑动,最佳策略可能如下。

  1. 预加载用户可能加载的图像(例如,当前显示的图像之前和之后的一张照片) 使用PHCachingImageManager
  2. 当用户滑动到实际图像时

    PHImageManager.defaultManager()。requestImageForAsset(...)

  3. 由于图像已预加载,因此应该更快

    另一种方法是首先加载较小的缩略图,然后延迟加载全屏图像。