我希望在iPhone的联系人有插入/更新事件时收到通知.
是否可以通过我的应用获取有关特定联系人更改事件的通知?
对于IOS Swift来说,只是一个新手......
我不期待完整的源代码.只是想知道它是否可能,也暗示.
提前致谢.
and*_*ani 26
从iOS 9开始,您可以注册您的课程以观察CNContactStoreDidChangeNotification
NSNotificationCenter.defaultCenter().addObserver(
self,
selector: #selector(addressBookDidChange),
name: NSNotification.Name.CNContactStoreDidChange,
object: nil)
Run Code Online (Sandbox Code Playgroud)
然后:
@objc func addressBookDidChange(notification: NSNotification){
//Handle event here...
}
Run Code Online (Sandbox Code Playgroud)
如" 联系框架参考"中所述
成功执行保存后,联系人存储会将CNContactStoreDidChangeNotification通知发布到默认通知中心.如果缓存任何Contacts框架对象,则需要通过其标识符或最初用于获取它们的谓词来重新获取这些对象,然后释放缓存的对象.请注意,缓存的对象是陈旧的,但不是无效的.
编辑:
请注意,现在不推荐使用通讯簿和通讯簿UI框架.
在iOS中,它可以使用 -
注册外部变更回叫通知 -
ABAddressBookRef ntificationaddressbook = ABAddressBookCreate();
ABAddressBookRegisterExternalChangeCallback(ntificationaddressbook, MyAddressBookExternalChangeCallback, self);
Run Code Online (Sandbox Code Playgroud)
实施回电 -
void MyAddressBookExternalChangeCallback (ABAddressBookRef ntificationaddressbook,CFDictionaryRef info,void *context)
{
// called when there is any change in AddressBook
}
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅此链接 -
检测从ABAddressBookRegisterExternalChangeCallback更改的内容
归档时间: |
|
查看次数: |
7771 次 |
最近记录: |