[swift] 연락처(Contacts) 정보를 이용한 현지화(localization) 기능 구현하는 방법
앱을 다국어 지원으로 개발할 때, 연락처 정보를 현지화하여 사용자 경험을 향상시킬 수 있다. 이를 위해서는 Swift에서 iOS 연락처 프레임워크를 사용하여 사용자의 지역과 언어에 맞는 정보를 가져와야 한다.
1. 연락처 접근 권한 요청
먼저, 사용자의 연락처에 접근하기 위한 권한을 요청해야 한다. info.plist 파일에 NSContactsUsageDescription
를 추가하여 연락처에 접근하는 이유와 방식을 설명한다. 이후, CNContactStore
를 사용하여 연락처에 접근할 수 있다.
import Contacts
let store = CNContactStore()
store.requestAccess(for: .contacts) { (granted, error) in
if granted {
// 권한이 허용되었을 때의 처리
} else {
// 권한이 거부되었을 때의 처리
}
}
2. 사용자의 현지화 정보 가져오기
다음으로, 사용자의 현지화 정보를 가져와야 한다. Locale.current
를 사용하여 사용자의 현지화 설정에 따른 언어, 국가, 통화 등의 정보를 가져올 수 있다.
let userLocale = Locale.current
let userLanguage = userLocale.languageCode
let userRegion = userLocale.regionCode
let userCurrency = userLocale.currencyCode
3. 연락처 정보 현지화
마지막으로, 가져온 현지화 정보를 사용하여 연락처 정보를 현지화한다. 예를 들어, 이름과 국가 코드를 사용하여 연락처 정보를 현지화할 수 있다.
let contactName = "John Doe"
let localizedContactName = NSLocalizedString(contactName, comment: "Contact Name")
let contactCountryCode = "US"
let localizedCountry = Locale.current.localizedString(forRegionCode: contactCountryCode)
이제 위의 방법을 사용하여 연락처 정보를 현지화하여 다국어 지원 앱을 만들 수 있다. 사용자의 지역과 언어에 맞게 연락처 정보를 표시함으로써 사용자의 만족도를 높일 수 있다.
참고 문헌: