SWIFT iOS9为联系人

时间:2015-10-26 16:05:56

标签: ios9 contacts

我正在使用CNMutableContact来创建联系人。 我可以添加图片与contact.imageData联系,但也有一个缩略图,但它是一个只读数据......

没有缩略图,在通话过程中不会出现联系人图片。

我也看过imageDataAvailable选项,但在联系人创建后设置为true。

如果有人知道如何设置缩略图:)

谢谢!

let contact = CNMutableContact()
contact.givenName = "Test Name"
let img = UIImage(named: "bg")
let data: NSData = NSData(data:UIImagePNGRepresentation(img!)!)
contact.imageData = data

let storeEx = CNContactStore()
let saveRequest = CNSaveRequest()
saveRequest.addContact(contact, toContainerWithIdentifier:nil)
try! storeEx.executeSaveRequest(saveRequest)

1 个答案:

答案 0 :(得分:1)

似乎特定于iOS9。它适用于iOS10。

同时,当缩略图图像不可用时,您可以通过回退到完整图像为iOS9用户生成自己的缩略图数据。

if (contact.thumbnailImageData) {
    _image = [UIImage imageWithData:contact.thumbnailImageData];
} else if (contact.imageData) {
    // on iOS9, programmatically assigned imageData does not propogate to thumbnailImageData
    // Depending on your use case, you may want to resize and cache here.
    _image = [UIImage imageWithData:contact.imageData];
}