0

我正在开发的这个应用程序允许用户拍照,并将它们保存在本地(通过 Core Data 的小缩略图,以及文档目录中的全尺寸图像)。我发现将图像文件写入文档目录需要很长时间——在我的 iPhone 3GS 上为 8 秒,在我的 iPhone 3G 和第一代 iPod touch 上更长时间。我这样写文件:

[imgData writeToFile:imagePath atomically:YES];

...有没有更快的方法来做到这一点?iPhone 的相机应用程序似乎非常快速地将图像写入文件系统。我可以在一个线程中进行写作,但我担心用户可能会在线程完成之前退出我的应用程序。

4

1 回答 1

2
  • 之前有人问一个密切相关的问题,普遍的看法是 iPhone 的相机应用程序使用了未记录的内部 API 调用。我个人不确定这是否属实,我认为 iPhone 应用程序更有可能在后台持续存在直到图像被保存,非越狱设备上的第三方应用程序尚不可用的“商品”。
  • 也许您应该尝试确实使用线程来保存图像,但是以更加面向数据的方式,以字节块为单位。这样,如果用户- (void) applicationWillTerminate(UIApplication *)application在应用程序委托的方法中按下主页按钮,您可以完成将数据保存到磁盘的过程。不过,这只会为您带来额外的 5 秒时间,但总比没有好。在保存文本文件时也给出了类似的建议。希望这会有所帮助,祝你好运!
于 2009-10-31T19:15:51.890 回答