与联系人关联的自定义标签 IOS OS X 联系人框架 Swift

Custom labels associated with a contact IOS OS X Contact Framework Swift

如何访问只读 and/or 可变联系人记录,这些记录与我认为是自定义标记的关系联系人数据有关?

例如,我有与联系人关联的儿媳、丈夫或儿子自定义标签我需要 CNLabeledValue CNLabelContactRelationChild 吗?我需要什么才能阅读这些或从联系人数据中获取这些自定义标签?

这是我设法为联系人分配关系并能够使用关系获取它的方法

var myNewContact = CNMutableContact()
let myRelation = CNContactRelation(name: "mommy")
let myMom = CNLabeledValue(label: CNLabelContactRelationMother, value: myRelation)
 myNewContact.contactRelations.append(myMom)

// add additional info to your contact such as name, email, family
// save your contact

let keysToFetch = [CNContactGivenNameKey, CNContactRelationsKey, CNContactEmailAddressesKey]    
let text =  "mommy"
    let request = CNContactFetchRequest(keysToFetch: keysToFetch)
        do {
            try store.enumerateContactsWithFetchRequest(request) {
                contact, stop in
                for var i = 0; i < contact.contactRelations.count; i++ {
                    if (contact.contactRelations[i].valueForKey("value")?.valueForKey("name")!)! as? String == text
                    {
                    print(contact.givenName)
                    print(contact.identifier)
                   }
                }
            }
        } catch let err{
            print(err)
        }
    }