【问题标题】:Why are some records in the Mac OS Addressbook read-only?为什么 Mac OS 通讯簿中的某些记录是只读的?
【发布时间】:2014-02-08 08:41:09
【问题描述】:
我的应用循环访问我在 Mac OS (10.9.1) 通讯簿 (contacts.app) 中的所有联系人,并希望更新某些属性。但是对于某些记录我不能这样做 - 因为记录是只读的(例如 Error Domain=ABAddressBookErrorDomain Code=1012 "Record is read-only" UserInfo=0x8c8a480 {NSLocalizedDescription=Record is read-only, property=Address })。我上网查明原因,如果有什么我可以做的 - 无济于事。有什么指点吗?
【问题讨论】:
标签:
addressbook
abaddressbook
【解决方案1】:
我不确定为什么它们是只读的,但我知道如何检查它们是否是只读的。使用ABRecordIsReadonly 函数(它将记录作为其唯一参数),您将返回一个bool,表示它是只读的还是不是。
我肯定有兴趣知道是什么导致记录为只读。在 iOS 上,我没有遇到过这样的事情。这似乎只是可可的事情。
编辑:这可能存在的一个原因是 Outlook 联系人,因为如果您在 Outlook 外部编辑或删除它们,它们会恢复原状。不过这只是猜测