如何使用CNContactStoreDidChangeNotification获取新添加的联系人标识符?

时间:2017-03-08 12:00:08

标签: ios cncontact

我希望获得所有新添加的联系人标识符。

这是我的代码:

-(void)viewWillAppear:(BOOL)animated {

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(addressBookDidChange:) name:CNContactStoreDidChangeNotification object:nil];
}

-(void)addressBookDidChange:(NSNotification*)notification
{
    //Handle event here...
    NSDictionary *dict = notification.userInfo;
    NSLog(@"Notification - %@",dict);

}

CNNotificationSaveIdentifiersKey数组始终为空。

 Notification - {
    CNNotificationOriginationExternally = 1;
    CNNotificationSaveIdentifiersKey =     (
    );
    CNNotificationSourcesKey =     (
    );
}

1 个答案:

答案 0 :(得分:0)

收到此通知后,您必须再次获取联系人。苹果医生是这样说的。

https://developer.apple.com/documentation/contacts/cncontactstore

如果您缓存获取的联系人,组或容器,则需要 在以下情况下重新获取这些对象(并释放旧的缓存对象) CNContactStoreDidChange已发布。