PHAsset - 在本地保存捕获的PHAsset的属性方式? (在应用程序中)

时间:2017-07-30 13:19:14

标签: objective-c nsuserdefaults phasset phassetcollection

尝试理解Photos / Photos.h框架的概念。

我的目标是:

  1. 将捕获的视频网址(或资产)写入应用的“userDefaults”。
  2. 读取“userDefaults”,&获取每个已保存的资产数据(thumbnail& url)

1 个答案:

答案 0 :(得分:2)

由于您没有提供任何代码(也没有提供任何代码),我可以帮助您解决其中的一些问题 - 但是您需要先学习一些代码才能将它们整合在一起。特别是如果你认为你问了一个有一个简单正确答案的问题。

UserDefaults不是存储图像的好地方。图像很大。 (您应该查看Apple关于UserDefaults用途的文档/它的预期用途)。

UserDefaults

存储图像的地方不止一个。如果开始耗尽内存,是否希望系统删除它们?然后它属于缓存:

let cachesPath = NSSearchPathForDirectoriesInDomains(.cachesDirectory, .userDomainMask, true).last!

你想在下次应用程序运行时依赖它吗?有一个标准的地方:

let userDocumentsFolder = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0]

您希望iTunes自动为您备份图像吗?它希望文件位于特定位置以进行自动备份。您是否有办法跟踪它的位置(如果重新运行该应用程序,文件的路径可能会更改)。为此您可能需要持久存储,因此CoreData或Realm可能是您的选择。或者,您可以扫描目录并创建已保存的文件列表。然后你需要一种方法来选择正确的方法。 (你怎么称呼它?用户应该选择它吗?)

Apple有关于访问照片库和使用PHAssets的非常清晰的有用文档。这只是一个例子:

PHAsset - Photos

这个网站上有很多有才华的人,他们愿意帮助你,但是你来这里之前需要做好功课。

我建议您阅读这些链接文档,开始编写一些代码,如果遇到问题,请回过头来询问有关任何特定问题的具体问题你遇到过。包括导致问题的代码,以及您获得的确切错误消息。我们很乐意提供帮助。