whatsapp如何在iOS中更快地从地址簿获得更新的联系人?

时间:2015-08-01 08:25:24

标签: ios objective-c abaddressbook whatsapp addressbookui

我的发现

我正在设计一个与我的后端同步联系的逻辑。我经历了一些在IOS中做同样事情的应用程序。我将以WhatsApp为例,我发现当我更新Native Addressbook中的任何联系人时,它反映了对Whatsapp的更改。

我的关注

我只是想知道它是如何以更快的方式同步的。即使是新的联系人也会与其远程服务器同步,并在联系时显示,并且如果该号码已注册,则能够启动Whatsapp聊天。

查询摘要

因此,简而言之,我的疑问是,

  1. Whatsapp如何同步联系人?
  2. whatsapp如何从Native Localbook获取更新的联系人列表(如果它正在这样做)?
  3. whatsapp如何只是在地址簿中添加新的联系人,是否有任何像时间戳或其他任何东西一样管理?
  4. 我知道有以下几件事,

    ABAddressBookGetPersonCount
    ABAddressBookGetPersonWithRecordID
    ABAddressBookCopyArrayOfAllPeople
    

    使用ABAddressBookGetPersonCount我可以知道是否有任何新联系人,但我仍然可以知道其记录ID,而无需使用ABAddressBookCopyArrayOfAllPeople

    迭代每个联系人

    所以我只想询问如何获得刚刚更新的列表。

1 个答案:

答案 0 :(得分:2)

执行此操作的方法是registering an external change callback。这样,一旦发生通讯录,您的应用就会收到通知。