从 CNContactRelation 获取 CNContact
Obtaining CNContact from CNContactRelation
我正在尝试获取 selected 联系人的所有相关联系人。执行此操作的方法似乎是通过 mycontact.contactRelations
。这给出了一个 CNLabeledValue
数组,每个数组都包含一个 CNContactRelation
作为它们的值。然后有一个 name
属性,但它似乎没有别的。
CNContact.ContractRelations
的 Xamarin 文档似乎建议我应该能够从 CNContactRelation
获得相应的 CNContact
但我看不到在 objc 中这样做的方法,其他而不是搜索名称匹配的联系人。这可能是也可能不是我要找的联系人,即使他们也与与 mycontact
.
同名的联系人有关系
CNLabeledValue
上的标识符似乎指的是标签而不是相关联系人,或者如果我 select 来自 [=] 的联系人,至少似乎与标识符不匹配19=].
有没有办法获取 objc 中相关联系人的CNContact
?
通讯录中的相关姓名字段不存储链接,仅存储姓名。如果您在 iOS 或 OS X 联系人应用程序中编辑相关名称,您会从用户的角度注意到这一点——它只是一个自由格式的文本字段。这些应用程序(和其他系统应用程序)会识别相关名称何时与另一个联系人的名称匹配(这就是为什么您可以让 Siri 给您的母亲打电话等),但它们也可以让您记下您没有的人的名字
的联系信息
所以 CNContactRelation
只包含一个字符串,查找(如果有的话)与相关姓名匹配的联系人的唯一方法是搜索联系人存储。使用 unifiedContactsMatchingPredicate:keysToFetch:error:
to search, with a predicate constructed by calling predicateForContactsMatchingName:
.
我正在尝试获取 selected 联系人的所有相关联系人。执行此操作的方法似乎是通过 mycontact.contactRelations
。这给出了一个 CNLabeledValue
数组,每个数组都包含一个 CNContactRelation
作为它们的值。然后有一个 name
属性,但它似乎没有别的。
CNContact.ContractRelations
的 Xamarin 文档似乎建议我应该能够从 CNContactRelation
获得相应的 CNContact
但我看不到在 objc 中这样做的方法,其他而不是搜索名称匹配的联系人。这可能是也可能不是我要找的联系人,即使他们也与与 mycontact
.
CNLabeledValue
上的标识符似乎指的是标签而不是相关联系人,或者如果我 select 来自 [=] 的联系人,至少似乎与标识符不匹配19=].
有没有办法获取 objc 中相关联系人的CNContact
?
通讯录中的相关姓名字段不存储链接,仅存储姓名。如果您在 iOS 或 OS X 联系人应用程序中编辑相关名称,您会从用户的角度注意到这一点——它只是一个自由格式的文本字段。这些应用程序(和其他系统应用程序)会识别相关名称何时与另一个联系人的名称匹配(这就是为什么您可以让 Siri 给您的母亲打电话等),但它们也可以让您记下您没有的人的名字
的联系信息所以 CNContactRelation
只包含一个字符串,查找(如果有的话)与相关姓名匹配的联系人的唯一方法是搜索联系人存储。使用 unifiedContactsMatchingPredicate:keysToFetch:error:
to search, with a predicate constructed by calling predicateForContactsMatchingName:
.