Ios 如何在CNContactViewController内显示图片(对于未知联系人:)
如何在Ios 如何在CNContactViewController内显示图片(对于未知联系人:),ios,swift,cncontact,cncontactviewcontroller,Ios,Swift,Cncontact,Cncontactviewcontroller,如何在CNContactViewController(forUnknownContact:) 我试过这样的方法: fileprivate func showUnknownContactViewController() { let aContact = CNMutableContact() let newEmail = CNLabeledValue(label: CNLabelWork, value: email! as NSString) aContact.ema
CNContactViewController(forUnknownContact:)
我试过这样的方法:
fileprivate func showUnknownContactViewController() {
let aContact = CNMutableContact()
let newEmail = CNLabeledValue(label: CNLabelWork, value: email! as NSString)
aContact.emailAddresses.append(newEmail)
let workPhone = CNLabeledValue(label: CNLabelWork, value: CNPhoneNumber(stringValue : phone!))
aContact.phoneNumbers.append(workPhone)
aContact.imageData = UIImagePNGRepresentation(profilePicture.image!)
//Pushing controller...
}
尝试按如下方式添加图像:
fileprivate func showUnknownContactViewController() {
let aContact = CNMutableContact()
let newEmail = CNLabeledValue(label: CNLabelWork, value: email! as NSString)
aContact.emailAddresses.append(newEmail)
let workPhone = CNLabeledValue(label: CNLabelWork, value: CNPhoneNumber(stringValue : phone!))
aContact.phoneNumbers.append(workPhone)
aContact.imageData = UIImagePNGRepresentation(profilePicture.image!)
//Pushing controller...
}
不幸的是,这不起作用,我找不到任何其他解决方案,因此我在问:有没有办法在CNContactViewController
中显示图片
这就是我想要的:
因此,在对进行了一点研究之后,我发现问题是由我显示的联系人是现有联系人引起的 图片已经设置好了,因为联系人中已经有相同的数据。它以某种方式识别它并在contacts中显示原始联系人。您是否找到了将不同图片强制添加到CNContactViewController的方法?我的联系人共享一个主办公室号码,如果用户联系人中已经有一个,则错误的图片会显示。我没有使用office号码进行测试,但我没有找到强制使用office号码的方法。这可能违反了苹果的政策,并限制了你的应用程序。CNContactViewController存在一个漏洞,显示通过电子邮件地址匹配的任何现有联系人的照片,即使你使用的是
for UnknownContact
-我向苹果报告了这一点,并且它似乎已经在iOS 13 beta 7中解决了