Я ищу способ получить список групп (CNGroup), которые относятся к контактному контейнеру (CNContainer). Когда я использую predicate, он терпит неудачу.Как получить массив CNGroup из CNContainer с помощью CNContactStore?
код я использую
func populateGroups(tableView:NSTableView,container:CNContainer){
print("populateGroups.start")
print(container.name)
print(container.identifier)
let contactStore = CNContactStore()
do {
let groupsPredicate = CNGroup.predicateForGroups(withIdentifiers: [container.identifier])
groups = try contactStore.groups(matching: groupsPredicate)
groupNames.removeAll();
for group:CNGroup in groups {
self.groupNames.append(group.name)
}
tableView.reloadData()
} catch {
print("Unexpected error fetching groups")
}
print("populateGroups.finish")
}
Я получаю сообщение об ошибке от не имеет смысла для меня.
Группы строк = попробуйте contactStore.groups (соответствие: groupsPredicate) вызывает ошибку.
[Accounts] Не удалось обновить учетную запись с идентификатором 47008233-A663-4A52-8487-9D7505847E29, ошибка: Ошибка домена = ABAddressBookErrorDomain Code = 1002 "(нуль)"
Что сбивает с толку, поскольку я не обновляя любой учетной записи.
Если я изменю эту строку кода на группы = попробуйте contactStore.groups (соответствует: nil) Я получаю все группы для всех контейнеров.
Как создать предикат, который вернет все CNG-группы, принадлежащие CNContactContainer?