ios - 如何在iPhone的核心数据中存储许多图像和.mp3文件?

标签 ios xcode core-data persistence

我对核心数据非常陌生,正在尝试学习如何存储大文件,例如图像和短 .mp3。我的应用程序有大约 300 个不同的图像和短 .mp3,它们通过用户交互触发显示/播放,据我所知,我应该使用核心数据来存储这些文件。

我向我的 xcode 项目添加了一个核心数据 .xc 文件,并创建了一个具有属性的实体。我选择了一个名为“二进制数据”的属性,并选中了“允许外部存储”框,根据我的阅读,这使我可以轻松地在 5.x 或更新版本的 iOS 手机上持久保存文件。我知道我可以对应用程序进行编程来获取和设置这些属性,但如何在此处存储我的图像和音乐文件?

请帮助我理解代码/理解。在我看来,我应该能够以某种方式使用核心数据接口(interface)来设置一堆包含“二进制数据”属性的实体,这些属性是我的图像和.mp3,并且每当我需要显示图片或播放声音时,我可以调用该实体及其属性。

感谢您的帮助!

最佳答案

我用 Core Data 存储压缩图像(jpeg),它看起来足够快。但这些被压缩到 < 100K。

如果您想要存储大于 100K 的项目,您可能只想将文件保存到“磁盘”,执行类似 Write a file on iOS 的操作

然后,将文件路径保存为 Core Data 中的字符串。要加载文件,请从核心数据中获取文件路径,然后读入文件。

我认为 Apple 建议将截止值设置为 100K。

关于ios - 如何在iPhone的核心数据中存储许多图像和.mp3文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16642561/

相关文章:

ios - 无法在 Xcode 5 Storyboard 中创建 IBAction 连接

xcode - NSTabView 之间传递值

ios - 更改模型后的核心数据迁移

ios - 在 Swift 中将 UIScrollView 与 UIVisualEffectView (UIBlurEffect) 结合使用

ios - Swift 中的可选绑定(bind)在prepareForSegue 中不起作用

ios - Phonegap 构建错误 : no iPhone Developer/Distribution identity found on your certificate

c++ - 如何最好地将 Xcode 和 Visual Studio 与同一个 git 存储库一起使用?

ios - 我有一个包含不同/多个 UIView 的 Storyboard ,我希望每个 UIView 都有一个 ViewController。 swift

Swift Core Data 添加额外的空行

ios - 使用 NSSet 关系填充 cellForRow