我的发现
我正在设计一个逻辑来与我的后端同步联系人。我浏览了一些在 IOS 中做同样事情的应用程序。我将以 WhatsApp 为例,我发现当我更新 Native Addressbook 中的任何联系人时,它会将该更改反映到 Whatsapp 中的一小部分。
我的顾虑
我只想知道它是如何以更快的方式同步的。即使是新联系人也会与其远程服务器同步并显示在联系人上,并且如果该号码已注册,则可以启动 Whatsapp 聊天。
查询摘要
所以,简而言之,我的疑问是,
- Whatsapp 如何同步联系人?
- whatsapp 如何从 Native Addressbook 获取刚刚更新的联系人列表(如果这样做的话)?
- whatsapp 如何刚刚在地址簿中添加了新的联系人,有没有像时间戳或其他任何东西这样管理的东西?
我知道下面的东西是这样的,
ABAddressBookGetPersonCount
ABAddressBookGetPersonWithRecordID
ABAddressBookCopyArrayOfAllPeople
使用ABAddressBookGetPersonCount
我可以知道是否有任何新联系人,但我仍然可以在不使用迭代每个联系人的情况下知道其记录 IDABAddressBookCopyArrayOfAllPeople
所以我只是在询问获取刚刚更新列表的方法。