gpt4 book ai didi

iphone - 在 iPhone 上的 Core Data 中存储大型(例如图像/电影)文件

转载 作者:行者123 更新时间:2023-12-03 19:06:31 25 4
gpt4 key购买 nike

看看 Apple iPhone Core Data Recipes 示例应用程序,它们将图像文件存储在核心数据对象中,我通常认为这不是明智之举。现在我还将把捕获的视频存储在 3GS 上。问题是:在 iPhone 上的 Core Data 中存储图像,然后再存储电影是否明智?

此外,还添加了加载到内存中的功能。显然,Recipes 中使用的设计(即将图像存储在单独的模型中)允许 Core Data 进行“故障”(听起来像是延迟加载),但我不确定这是否属实。

看这里:http://developer.apple.com/iPhone/library/documentation/Cocoa/Conceptual/CoreData/Articles/cdPerformance.html#//apple_ref/doc/uid/TP40003468-SW5似乎 Cocoa 的通用建议是使用单独的文件......

最佳答案

这要看情况。 CoreData 不仅能够以良好的性能存储大型 blob。最大的问题是:

  1. 如果这些 blob 是实体的属性,并且可能并不总是出现错误,那么您需要小心确保每次使用该实体时,您都告诉 CD 不要在属性中出现错误,直到您询问为止。您可以通过将 blob 隔离在它们自己的实体中来解决这个问题,除非您通过关系访问它,否则不会出现错误。

  2. 您的持久存储是一个整体文件,这意味着如果其中有任何内容发生更改,则需要在备份期间复制整个内容。这通常会增加手机在与 iTunes 同步时备份所需的时间,因为您更改了一些元数据,现在它必须复制每个图像。

    第一个问题通常没什么大不了的,你只需要小心即可。如果数据实际上是只读的,那么第二个问题不是问题,但如果持久存储中有几百兆字节的数据,那么用户体验可能会非常糟糕。

关于iphone - 在 iPhone 上的 Core Data 中存储大型(例如图像/电影)文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1168954/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com