使用内置的iPhone地址簿框架,我怎么能接触的特定列表保存到NSUserDefaults的中数组?我需要保存收件人列表供以后使用。

我要确保,如果用户编辑联系人我的应用程序被关闭后,我就不会遇到问题。是否有某种独特的ID,每个接触有,我可以保存和查找后?

有帮助吗?

解决方案

ABRecordID最肯定做变化(由于学会这个硬盘的方式 - 如多机接触同步的结果)

马特Gemmell具有 iphone-一个很好的书面记录DEV-提示换同步触点

我不存储复合名称,而是ABRecordId,姓,名,电子邮件地址和电话号码(其中最后两个直接通过我的应用程序使用)。

如果我不想得到一击

 ABRecordRef aRef = ABAddressBookGetPersonWithRecordID(addressBook, aRecordId);

我用一串代码找到名字的姓氏可能的匹配,然后通过电话号码完善它。

作为最后的一边,我使得所有的这(潜在的)模糊分辨率是抽象出来我正在与一个接触关联的数据的相关联的接触所产生的UUID。

其他提示

小心这一点,我相信有(预OS3.0至少)一个问题,即当用户同步他们的设备本ABRecordID可能改变。这显然会导致问题,如果你是依靠再次使用该ID。我不知道这是否仍在OS3.0发生与否。

http://discussions.apple.com/thread.jspa?threadID=1771736

只是要注意。

在ABRecordRef具有ABRecordID属性,你应该能够用来唯一标识供以后访问。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top