WhatsApp如何更快地从iOS地址簿更新联系人?

我的发现

我正在devise一个逻辑来同步与我的后端联系。 我经历了一些在IOS中做同样的事情的应用程序。 我将以WhatsApp为例,我发现,当我更新本地通讯录中的任何联系人时,它会反映到WhatsApp的变化部分。

我的顾虑

我只是想知道它是如何以更快的速度进行同步的。 即使是一个新的联系人与远程服务器同步,并显示在联系人,并能够启动WhatsApp的聊天,如果这个号码是注册之一。

查询摘要

所以,简而言之,我的疑问是,

  1. Whatsapp如何同步联系人?
  2. 如何WhatsApp的只是从本地通讯录更新联系人列表(如果这样做)?
  3. howsapp只是简单地将新的联系人添加到地址簿中,是否有什么像时间戳或其他任何东西一样pipe理?

我知道以下这些事情是有的,

ABAddressBookGetPersonCount ABAddressBookGetPersonWithRecordID ABAddressBookCopyArrayOfAllPeople 

使用ABAddressBookGetPersonCount我可以知道是否有任何新的联系人,但我仍然可以知道它的loggingID,而无需迭代每个联系人使用ABAddressBookCopyArrayOfAllPeople

所以我只是要求得到更新列表的方式。

这样做的方法是通过注册一个外部更改callback 。 这样,一旦发现通讯录中的任何更改,您的应用程序将收到通知。