我的发现
我正在设计一个逻辑来与我的后端同步联系人。我浏览了一些在 IOS 中做同样事情的应用程序。我将以 WhatsApp 为例,我发现当我更新 Native Addressbook 中的任何联系人时,它会以一小部分反映到 Whatsapp 中。
我的顾虑
我只是想知道它是如何以更快的方式同步的。即使是新联系人也会与其远程服务器同步并显示在联系人上,并且如果该号码已注册,则能够启动 Whatsapp 聊天。
查询摘要
所以,简而言之,我的疑问是,
- Whatsapp 如何同步联系人?
- Whatsapp 如何从本机地址簿获取刚刚更新的联系人列表(如果正在这样做)?
- Whatsapp 如何在地址簿中添加新联系人,是否有任何管理功能,例如时间戳或其他内容?
我知道有以下东西,
ABAddressBookGetPersonCount
ABAddressBookGetPersonWithRecordID
ABAddressBookCopyArrayOfAllPeople
使用ABAddressBookGetPersonCount
我可以知道是否有任何新联系人,但我仍然如何能够知道其记录 ID,而无需使用迭代每个联系人ABAddressBookCopyArrayOfAllPeople
所以我只是问如何获得刚刚更新的列表。
执行此操作的方法是注册外部更改回调 https://developer.apple.com/library/ios/documentation/AddressBook/Reference/ABAddressBookRef_iPhoneOS/#//apple_ref/c/func/ABAddressBookRegisterExternalChangeCallback。这样,您的应用程序将在地址簿发生任何更改时立即收到通知。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)