首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >保留ABPerson在CoreData中的参考

保留ABPerson在CoreData中的参考
EN

Stack Overflow用户
提问于 2015-03-27 15:21:24
回答 1查看 104关注 0票数 0

我正在努力让手机的联系人在我的应用程序中保持最新,以一种持久的方式。为此,我正在考虑使用核心数据。

我现在的计划似乎极不理想:

  • 浏览地址簿及其中的每个ABPerson
  • 将每个字段存储在CoreData持久存储中
  • 将图像存储在具有唯一名称的单独文件中,并在另一个“联系人”字段中引用。

每次应用程序出现在前台时,我都会做这个,以防用户更改联系人的姓名或图片等等。

我的一些用户有2500多个联系人,有时操作长达10秒。

我的问题是:

是否有一种方法可以在coredata中保留对我的ABPerson的某种引用,这样我就可以始终在任何地方加载我的ABPerson属性而不是联系人属性。(这样就永远是最新的了)。

我甚至不确定这是正确的决定:我应该总是使用我找到的带有引用的ABRecord吗?我应该总是使用我自己复制的数据,我定期更新(从ABAddressBook)吗?

如果不是的话,你们认为我这样做是很体面的,还是你们会提出别的建议?

编辑:

正如评论中所问的:

我需要保持最新的联系人,只需使用他们的名字,姓氏和图片属性。如果我注意到ABRecord的更改,我将相应地更新相关的自定义对象,仅此而已。之后,我真的不需要其他任何东西了(直到它们再次被编辑)

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-27 16:59:10

只获取和存储ABRecord的唯一标识符值。这是一种持久的方法来可靠地重复和始终如一地引用同一个人。

通过使用此唯一标识符,您始终可以从联系人数据库中获取所有其他信息。

在iOS中,调用ABRecordGetRecordID获取个人的唯一ID。当您以后想要获得相应的人时,请调用ABAddressBookGetPersonWithRecordID

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29304237

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档