[swift] 연락처(Contacts) 정보를 이용한 쇼핑 및 배달 서비스 연동

최근에는 쇼핑 및 배달 서비스들이 더 편리한 이용을 위해 고객들의 연락처 정보를 이용하여 배송 및 주문 처리를 한다. iOS 플랫폼에서는 연락처 정보를 읽는 데에 제약사항이 있지만, 연락처 정보를 읽고 이를 이용하여 쇼핑 앱 또는 배달 서비스 어플리케이션과 연동하는 방법에 대해 알아보자.

연락처 접근 권한 얻기

iOS 애플리케이션이 사용자의 연락처 정보에 접근하려면 먼저 사용자에게 권한을 요청해야 한다. Info.plist 파일에 NSContactsUsageDescription 키를 추가해서 이유를 설명하는 메시지를 넣어주어야 한다. 예를 들어, “연락처 정보를 가져오기 위해 사용자 권한이 필요합니다”와 같은 메시지를 넣어주면 된다.

<key>NSContactsUsageDescription</key>
<string>연락처 정보를 가져오기 위해 사용자 권한이 필요합니다</string>

연락처 정보 가져오기

Contacts 프레임워크를 이용해서 연락처 정보를 가져올 수 있다. 사용자에게 권한을 얻은 후에는 CNContactStore를 이용하여 연락처 데이터를 읽을 수 있다. 아래는 Swift로 구현한 예시이다.

import Contacts

let contactStore = CNContactStore()
let keys = [CNContactGivenNameKey, CNContactFamilyNameKey, CNContactPhoneNumbersKey]

let request = CNContactFetchRequest(keysToFetch: keys as [CNKeyDescriptor])

try contactStore.enumerateContacts(with: request) { contact, _ in
    guard let phoneNumber = contact.phoneNumbers.first?.value.stringValue else {
        return
    }
    // 연락처 정보 사용
    print("이름: \(contact.givenName) \(contact.familyName), 전화번호: \(phoneNumber)")
}

연동 및 활용

가져온 연락처 정보를 활용하여 쇼핑 앱이나 배송 서비스 애플리케이션과 연동할 수 있다. 예를 들어, 주문자의 전화번호로 주문 내역을 조회하거나, 주소록에서 선택한 연락처로 주문자 정보를 입력하는 등의 활용이 가능하다.

연락처 정보를 활용하려면 해당 서비스 업체의 API 문서를 참고하여 연동 및 활용 방법을 파악해야 한다.

연락처 정보를 활용하여 서비스를 향상시키는 것은 고객들에게 더 나은 이용 경험과 더욱 우수한 서비스를 제공하는 데 도움이 되며, 이는 회사의 성장에도 긍정적인 영향을 미칠 수 있다.


참고문헌:

이제 연락처 정보를 이용하여 쇼핑이나 배달 서비스를 더욱 효율적으로 제공할 수 있는 방법에 대해 알게 되었습니다.