앱을 다국어로 제공하려면 사용자가 언어를 선택하거나 기기의 언어 설정을 기준으로 앱의 내용을 동적으로 변경해야 합니다. Firebase Remote Config를 사용하여 앱의 국제화를 지원할 수 있습니다. Firebase Remote Config는 Firebase의 기능 중 하나로, 앱의 동작을 수정하고 구성 값을 업데이트할 수 있는 클라우드 기반의 구성 관리 도구입니다.
Firebase Remote Config 설정하기
Firebase Remote Config를 사용하려면 다음과 같은 단계를 따라야 합니다.
-
Firebase 콘솔에 로그인하고 프로젝트를 선택합니다.
-
“Remote Config”로 이동하여 각 언어에 대한 키-값 쌍을 추가합니다. 예를 들어, “welcome_message”라는 키를 만들고 해당 키에 각 언어에 대한 환영 메시지를 할당할 수 있습니다.
-
기본값을 설정합니다. 기본값은 키와 연결된 값 중 어떤 것도 찾을 수 없을 때 사용됩니다.
-
iOS 앱에 Firebase SDK를 추가하고 Firebase Remote Config 모듈을 가져옵니다.
import FirebaseRemoteConfig
- Firebase Remote Config에서 구성 값을 가져옵니다.
let remoteConfig = RemoteConfig.remoteConfig()
remoteConfig.fetchAndActivate() { status, error in
if let error = error {
print("Error fetching remote config: \(error.localizedDescription)")
return
}
// Firebase Remote Config 값을 적용하는 로직 작성
}
Firebase Remote Config를 통한 국제화 적용하기
Firebase Remote Config에서 가져온 구성 값을 앱에 적용하는 로직을 작성합니다. 다음은 Firebase Remote Config 값을 적용하는 예시입니다.
let welcomeMessageKey = "welcome_message"
let defaultWelcomeMessage = "Welcome"
let welcomeMessage = remoteConfig.configValue(forKey: welcomeMessageKey).stringValue ?? defaultWelcomeMessage
// 사용자의 기기 언어를 확인하여 해당 언어에 맞는 환영 메시지를 표시
if let deviceLanguage = Locale.current.languageCode {
let localizedWelcomeMessage = remoteConfig.configValue(forKey: "\(welcomeMessageKey)_\(deviceLanguage)").stringValue
if let localizedWelcomeMessage = localizedWelcomeMessage {
label.text = localizedWelcomeMessage
} else {
label.text = welcomeMessage
}
} else {
label.text = welcomeMessage
}
위의 예시는 사용자의 기기 언어를 확인하고 해당 언어에 맞는 환영 메시지를 표시하는 기능을 보여줍니다. Firebase Remote Config에서 가져온 구성 값 중에는 _언어코드
와 같은 형태의 키로 적합한 언어에 대한 메시지를 저장하여 사용할 수 있습니다.
Firebase Remote Config를 사용하면 앱의 국제화를 손쉽게 구현할 수 있습니다. 사용자가 앱을 실행할 때마다 언어 설정을 확인하고 해당 언어에 맞는 내용을 동적으로 업데이트하여 다양한 사용자에게 다국어 경험을 제공할 수 있습니다.
참고 자료
- Firebase Remote Config 개요: https://firebase.google.com/products/remote-config
- Firebase Remote Config iOS 가이드: https://firebase.google.com/docs/remote-config/use-config-ios