Iphone 使用新的外部存储标志在核心数据中存储UIImage
我知道UIImage在核心数据中的存储已经讨论了很多,例如,但那是在ios5之前。既然我们有了外部存储标志,你们认为将UIImage直接存储在实体中是一个好主意,作为一个单独的实体,还是仍然存储在磁盘上 是解释外部存储选项的来源。 启用后,如果 它应该将数据直接保存在数据库中,或者将URI存储到 它为您管理的单独文件。您不能基于 如果使用此选项,则为二进制数据属性的内容 从你的链接来看,启发似乎是 小于1MB的对象存储在数据库中。对于 对象较大时,将创建一个外部文件并创建数据库 只存储对它的引用 因此,以下建议仍然有效:Iphone 使用新的外部存储标志在核心数据中存储UIImage,iphone,image,core-data,ios5,Iphone,Image,Core Data,Ios5,我知道UIImage在核心数据中的存储已经讨论了很多,例如,但那是在ios5之前。既然我们有了外部存储标志,你们认为将UIImage直接存储在实体中是一个好主意,作为一个单独的实体,还是仍然存储在磁盘上 是解释外部存储选项的来源。 启用后,如果 它应该将数据直接保存在数据库中,或者将URI存储到 它为您管理的单独文件。您不能基于 如果使用此选项,则为二进制数据属性的内容 从你的链接来看,启发似乎是 小于1MB的对象存储在数据库中。对于 对象较大时,将创建一个外部文件并创建数据库 只存储对它的引用
- <100kb存储在与相关数据相同的表中
- <1mb存储在通过关系附加的单独表中,以避免不必要的加载
- 1mb存储在磁盘上,并在核心数据中引用
该标志将核心数据设置为遵循该建议,并自动将大于1MB的图像存储为一个单独的磁盘文件。因此,在这种情况下,我们可能应该将其放在一个单独的实体中,以防其在100kb-1MB范围内,因为外部存储不考虑这种情况?警告:外部图像存储存在一个缺陷,当删除,有时:外部存储和迁移存在另一个bug。如果尝试创建新模型,然后使用轻量级迁移,则会丢失存储在外部文件中的所有“二进制数据”。@zirinisp任何解决方法??我有一个应用程序的问题,我有它在appstore和用户存储像这样的图像生活,我需要迁移。我可以使用手动迁移吗?我们可以访问用于将图像上载到其他服务的url吗?