0

我正在编写一个简单的应用程序来将一组图像复制到用户的照片库,以便用户可以将它们用作背景。问题是如果用户多次运行该应用程序,重复的图像将被复制到照片库中。鉴于 Apple 对访问照片库内容的限制,如果有的话,避免将重复文件写入照片库的最简单方法是什么?

4

2 回答 2

0

您可以通过将图像数据写入文件或使用 Core Data 来存储已保存在应用程序中的图像数据,这样您就知道哪些已保存,哪些未保存。是

于 2009-08-24T03:38:29.330 回答
0

这个答案有些迟了,但迟到的答案总比没有答案好。答案是没有办法检查照片库 (PL) 中的重复图像(至少在公共 API 的限制内)。写入照片库的唯一方法是通过 UIKit 全局函数:

void UIImageWriteToSavedPhotosAlbum (
   UIImage  *image,
   id       completionTarget,
   SEL      completionSelector,
   void     *contextInfo
);

此代码只是将 UIImage 的实例写入照片库。它的四个参数都不代表可能与图像一起保存的附加的、潜在的识别对象。它包装的 UIImage 或 CGImage 也不为此类“元数据”提供插槽。当然,总是可以子类化,但遗憾的是没有办法检查 PL 的内容。PL 是一个只写持久存储,其内容,至少就 API 程序员而言,本质上是匿名的。像黑洞一样,照片库有一个“单向表面”。

于 2009-09-17T06:19:35.767 回答