[ios] ContactsUI에서 연락처의 주소 정보를 추가하는 방법은 무엇인가요?

먼저 앱의 Info.plist 파일에 NSContactsUsageDescription 키를 추가하여 사용자에게 연락처 접근 권한을 요청합니다. 이것은 iOS 10 이상에서는 필수적인 단계입니다.

그런 다음, CNMutablePostalAddress 객체를 만들어서 주소 정보를 설정합니다. 주소 정보에는 거리, 도시, 주, 우편번호, 국가 등이 포함될 수 있습니다.
아래는 주소를 추가하는 예제 코드입니다.

import Contacts
import ContactsUI

func addAddressToContact() {
    let contact = CNMutableContact()
    
    let address = CNMutablePostalAddress()
    address.street = "123 Main St"
    address.city = "Anytown"
    address.state = "CA"
    address.postalCode = "12345"
    address.country = "USA"
    
    contact.postalAddresses = [CNLabeledValue(label: CNLabelHome, value: address)]
    
    let contactViewController = CNContactViewController(forUnknownContact: contact)
    contactViewController.contactStore = CNContactStore()
    contactViewController.delegate = self
    
    navigationController?.pushViewController(contactViewController, animated: true)
}

위 코드에서는 CNMutableContact를 생성하고, CNMutablePostalAddress를 이용하여 주소 정보를 설정한 후, CNLabeledValue를 사용하여 연락처에 추가했습니다. 추가된 주소 정보는 ContactsUI의 CNContactViewController를 사용하여 연락처에 표시됩니다.

여기서 CNContactViewControllerDelegate를 구현하여 연락처가 성공적으로 업데이트된 후에 처리할 수 있습니다.

이제 결론을 내리겠습니다. ContactsUI를 사용하여 iOS 앱에서 연락처에 주소 정보를 추가하는 방법을 검토했습니다. 실제 앱에서는 사용자의 동의를 받아야 하며, 사용자가 연락처 정보에 액세스하는 것을 승인해야 합니다.

더 자세한 정보는 Apple의 ContactsUI 프레임워크 문서를 참조하시기 바랍니다.