使用 CNContactStore 以编程方式将家庭地址保存到新联系人? Swift 3

Programmatically save a home address to a new contact using CNContactStore? Swift 3

我想以编程方式在我的应用程序中创建一个联系人,并使用苹果联系人框架将其保存到实际联系人中。我可以用名字、姓氏甚至日期来创建一个。

我从

开始
let contact = CNMutableContact()

并以

结尾
let store = CNContactStore()
let saveRequest = CNSaveRequest()
saveRequest.add(contact, toContainerWithIdentifier: nil)
try? store.execute(saveRequest)

但我不知道如何使用家庭住址。任何帮助将不胜感激,谢谢。很想通过位置坐标甚至城市、州、街道等的字符串来做到这一点。

谢谢。

创建家庭住址的方法如下:

let store = CNContactStore()
let contact = CNMutableContact()
contact.familyName = "Tester"
contact.givenName = "Bad"
// Address
let address = CNMutablePostalAddress()
address.street = "Your Street"
address.city = "Your City"
address.state = "Your State"
address.postalCode = "Your ZIP/Postal Code"
address.country = "Your Country"
let home = CNLabeledValue<CNPostalAddress>(label:CNLabelHome, value:address)
contact.postalAddresses = [home]
// Save
let saveRequest = CNSaveRequest()
saveRequest.add(contact, toContainerWithIdentifier: nil)
try? store.execute(saveRequest)

如果你想创建一个工作地址,那么你会创建另一个 CNMutablePostalAddress 实例来保存工作地址信息,然后创建另一个 CNLabeledValue<CNPostalAddress> 标签为 CNLabelWork并将新的 CNLabeledValue<CNPostalAddress> 实例也添加到最终的 postalAddresses 数组中。