[ios] 연락처 가져오기
iOS 앱에서 연락처를 가져오는 것은 사용자의 연락처 정보를 활용하여 다양한 기능을 제공하는 데 유용합니다. iOS에서는 연락처 프레임워크 및 사용자 권한 등을 이용하여 연락처 정보를 가져올 수 있습니다. 이 글에서는 Swift를 사용하여 iOS 연락처에서 가져온 연락처 정보를 다루는 방법에 대해 설명하겠습니다.
연락처 접근 권한 요청
iOS에서는 사용자의 연락처 정보에 접근하기 위해 권한을 요청해야 합니다. Info.plist
파일에 NSContactsUsageDescription
키를 추가하여 연락처에 접근하는 목적을 설명하는 메시지를 포함해야 합니다.
<key>NSContactsUsageDescription</key>
<string>연락처에 접근하여 친구 목록을 표시합니다.</string>
연락처 가져오기
Swift에서는 Contacts
프레임워크를 사용하여 연락처 정보를 가져올 수 있습니다. 다음은 연락처에서 이름과 전화번호를 가져오는 간단한 예제 코드입니다.
import Contacts
func fetchContacts() {
let store = CNContactStore()
store.requestAccess(for: .contacts, completionHandler: { (granted, error) in
if granted {
let keys = [CNContactGivenNameKey, CNContactFamilyNameKey, CNContactPhoneNumbersKey] as [CNKeyDescriptor]
let request = CNContactFetchRequest(keysToFetch: keys)
do {
try store.enumerateContacts(with: request, usingBlock: { (contact, pointer) in
let firstName = contact.givenName
let lastName = contact.familyName
let phoneNumbers = contact.phoneNumbers
for number in phoneNumbers {
let phoneNumber = number.value.stringValue
print(firstName, lastName, phoneNumber)
}
})
} catch {
print("Error fetching contacts")
}
} else {
print("Permission denied")
}
})
}
위의 코드에서 CNContactStore
를 사용하여 연락처에 접근합니다. 사용자가 권한을 허용한 경우, CNContactFetchRequest
를 사용하여 이름 및 전화번호와 같은 필요한 정보를 가져올 수 있습니다.
위의 단계를 따라 하면 iOS 앱에서 연락처 정보를 가져와 활용할 수 있습니다.
이상으로 iOS 앱에서 연락처를 가져오는 방법을 알아보았습니다. 연락처 정보를 적절히 활용하여 다양한 기능을 개발해보세요!
더 많은 정보는 Apple developer 문서를 참고할 수 있습니다.