[flutter] easy_localization을 사용한 다국어 앱의 번역 관리 방법

안녕하세요! 이번 포스트에서는 easy_localization 패키지를 사용하여 Flutter 앱에서 다국어 지원을 구현하고 번역을 관리하는 방법에 대해 알아보겠습니다.

목차

easy_localization 패키지 소개

easy_localization은 Flutter 앱에서 다국어 지원을 쉽게 구현할 수 있도록 도와주는 패키지입니다. 이 패키지를 사용하면 앱의 다국어 지원에 대한 번거로움을 크게 줄일 수 있습니다.

다국어 지원 설정

먼저, pubspec.yaml 파일에 다음과 같이 easy_localization 패키지를 추가합니다.

dependencies:
  flutter:
    sdk: flutter
  easy_localization: <latest_version>

다음으로, main.dart 파일에서 앱을 초기화하는 부분에서 EasyLocalization 위젯을 추가합니다.

import 'package:flutter/material.dart';
import 'package:easy_localization/easy_localization.dart';

void main() {
  runApp(
    EasyLocalization(
      supportedLocales: [Locale('en', 'US'), Locale('ko', 'KR')],
      path: 'assets/translations', // 번역 파일 경로
      fallbackLocale: Locale('en', 'US'), // 기본 언어 설정
      child: MyApp(),
    ),
  );
}

번역 파일 구성

assets/translations 디렉토리에 각 언어별로 번역 파일을 구성합니다. 예를 들어, en.jsonko.json 파일을 다음과 같이 만들 수 있습니다.

en.json

{
  "greetings": "Hello!",
  "welcome": "Welcome to our app"
}

ko.json

{
  "greetings": "안녕하세요!",
  "welcome": "우리 앱에 오신 것을 환영합니다"
}

번역 사용하기

이제 위에서 설정한 번역을 사용할 수 있습니다. 예를 들어, String 값을 출력할 때 tr 메소드를 사용하여 해당 언어에 맞는 번역을 쉽게 얻을 수 있습니다.

Text('greetings'.tr())
Text('welcome'.tr())

마무리

이렇게 easy_localization 패키지를 사용하여 Flutter 앱에서 다국어 지원을 설정하고 번역을 관리하는 방법에 대해 알아보았습니다. 앱의 사용자들이 자신들의 언어로 앱을 사용할 수 있게 함으로써 사용자 경험을 향상시킬 수 있습니다. easy_localization 공식 문서에서 더 자세한 정보를 확인할 수 있습니다.