使用 Core Data 和 SQLite 存储文件的联系人或地址簿应用程序
Posted
技术标签:
【中文标题】使用 Core Data 和 SQLite 存储文件的联系人或地址簿应用程序【英文标题】:Contact or address book app using Core Data and a SQLite storage file 【发布时间】:2012-05-26 02:34:01 【问题描述】:我想知道是否可以创建一个使用 Core Data 和 SQLite 存储文件的地址簿或联系人应用程序,例如 Apple 的。
我不确定这是否可能,或者如何做到这一点是手机具有多个属性。因此,用户可以为同一个联系人输入五个不同的电话号码。
我能想到的唯一方法是说...为该人提供一个实体...然后为与他们建立关系的电话提供另一个实体。所以一个人可以拥有多部手机,但一部手机只能拥有一个人。但这似乎不是一个好方法……有人有建议吗?
【问题讨论】:
【参考方案1】:我不明白您是如何得出这样的结论,即多个实体不是执行此类操作的好方法。如果您想要灵活性,这是唯一的方法。向实体添加三个电话号码属性绝对是错误的方法。
我会使用这样的简单数据模型:
每条记录都有一个类型(例如电子邮件、电话、传真、IM 联系人)、一个键(例如办公室、家庭、手机、twitter、jabber)和一个值(例如 55512345、foo@bar.com、@foobar)。
这样的模型提供了最大的灵活性,实现起来也不是很复杂。 虽然您需要几个谓词来获取电话号码、电子邮件等。
【讨论】:
感谢您的回答。我想我认为这样做是错误的或不是很好的方法。你的答案是明确的路要走。 简单、累积、高效的答案。我非常感谢您提到的方法。以上是关于使用 Core Data 和 SQLite 存储文件的联系人或地址簿应用程序的主要内容,如果未能解决你的问题,请参考以下文章
iPhone 和 Apple Watch 应用之间的 Core Data SQLite 存储更改通知
解析本地数据存储以替代 Core Data (iOS) 和 SQLite (Android)
在 NSLibraryDirectory 或 NSApplicationSupportDirectory 中存储 Core Data Sqlite?