1. 新增联系人
新增app联系人:(app中和系统中均有)。
先将联系人保存到系统的通讯录中。保存新添加的通讯录联系人到数据库 联系人表和电话表 LNPhone LNContact
LNNewContactController
#pragma mark - 添加联系人
- (NSString *)addAddress
新增系统的联系人:(app中不知道)。需要下一次读取系统的数据进行添加。
2.删除联系人
删除app联系人:
先删除系统的联系人,在删除本地数据库中的联系人。
// 2、删除本地数据库联系人信息
[LNContact deleteObjectsByCriteria:[NSString stringWithFormat:@"where recordID = %@",self.contactInfo.contact.recordID]];
[LNPhone deleteObjectsByCriteria:[NSString stringWithFormat:@"where recordID = %@",self.contactInfo.contact.recordID]];
// 更新电话记录信息
[self updatePhoneRecordInfo:self.contactInfo.contact.recordID];
// 更新通信记录信息
[self updateContactRecordInfo:self.contactInfo.contact.recordID];
// 3、删除成功后,返回上一级页面
[self.navigationController popToRootViewControllerAnimated:YES];
// 4、删除成功后,发出删除联系人通知
[[NSNotificationCenter defaultCenter]postNotificationName:NotificationDeleteContactobject:self.contactInfo];
删除系统的联系人:(app中不知道)。需要下一次读取系统的数据进行删除。
3.变更联系人
APP变更联系人:
1. 联系人的号码新增,变更,删除。
先删除后根据recordID进行插入。
变更系统的联系人:(app中不知道).需要在下一次读取系统的数据进行更新。
========================================================================
通讯录通话记录同步的原则:
LNRecordID的保存用户信息的原则:
1. 如果手机中保存的用户的记录的名称为空的,在recordid中不保存
2. 如果存在名称相同的或者相近的均保存。(王凤 、王凤、--王凤)。手机中存在这样的记录三条,LNRecordID均保存。
LNCONTACT的保存用户信息的原则:
问题:目前保存的LNCONTACT的信息同名账号保存问题,王凤 、王凤、--王凤.在这个表中只保存了--王凤一条记录。
1.保存 LNCONTACT的记录和LNRecordID的记录保存一致。
LNPHONE保存用户信息的原则:
目前LNPHONE的recordID和LNCONTACT的记录一致。
目前我们需要先解决LNCONTACT的保存信息。
=================================================
通讯录中出现的一处 bug -----
1. 问题一 phone.lnPhonesearchPhone 的保存问题。