使用CNContactViewController进行编辑后,联系人不会更新

时间:2017-10-24 21:54:36

标签: ios swift cncontactviewcontroller

最近检测到的测试人员比使用 CNContactViewController 在应用内创建联系人时插入了无效的电话号码(例如,12345)并保存了联系人。

当他们尝试编辑联系人并更新电话号码以使其有10位数时,联系人似乎已保存,但是再次编辑它会显示旧号码(12345),并且在联系人应用程序中,联系人仍然具有旧号码。

发生这种情况时,CNContactViewControllerDelegate函数

func contactViewController(_ viewController: CNContactViewController, didCompleteWith contact: CNContact?) { }

nil 返回联系人。但是对于其他电话号码,它会正确返回新值。

经过Google搜索并无法找到解决方案之后,我决定创建另一个模仿CNContactViewController的viewController,但使用 CNMutableContact CNSaveRequest 来更新手机联系人没有更新。

注意:仅当使用无效的电话号码创建联系人然后进行编辑时,才会发生这种情况。我像这样初始化viewController

let controller = CNContactViewController(forNewContact: nil)

然后我将它推送到navigationController

0 个答案:

没有答案