繁体   English   中英

在 iPhone 上写入大文件的最快方法是什么?

[英]What is the fastest way to write a large file on the iPhone?

我正在开发的这个应用程序允许用户拍照,并将它们保存在本地(通过 Core Data 的小缩略图,以及文档目录中的全尺寸图像)。

不过,我发现将图像文件写入文档目录需要很长时间——在我的 iPhone 3GS 上为 8 秒,在我的 iPhone 3G 和第一代 iPod touch 上甚至更长。

我这样写文件:

[imgData writeToFile:imagePath atomically:YES];

有没有更快的方法来做到这一点?

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM