[flutter] 다국어 지원을 위한 언어 파일 작성 방법

다국어 지원은 앱이 전 세계적으로 사용되도록 만드는 데 중요한 요소입니다. Flutter에서는 간단한 설정으로 앱을 여러 언어로 번역할 수 있습니다. 언어 파일을 만들고 이를 사용하여 앱에서 텍스트를 지원하는 방법을 알아보겠습니다.

1. 언어 파일 생성

먼저, 각 언어에 대한 텍스트를 포함하는 언어 파일을 생성해야 합니다. 이 파일은 JSON 형식으로 작성되어야 합니다.

예를 들어, 영어 및 한국어를 지원하는 경우 다음과 같이 작성할 수 있습니다:

// en.json
{
  "title": "Welcome to my app",
  "body": "This is a sample text for localization"
}
// ko.json
{
  "title": "내 앱에 오신 것을 환영합니다",
  "body": "로컬라이제이션을 위한 샘플 텍스트입니다"
}

2. 언어 파일 추가

Flutter 프로젝트의 pubspec.yaml 파일에 언어 지원을 위한 패키지를 추가해야 합니다. 예를 들어, flutter_localizations 패키지를 사용할 수 있습니다.

dependencies:
  flutter:
    sdk: flutter
  flutter_localizations:
    sdk: flutter
  ...

flutter:
  ...
  localizationsDelegates:
    - GlobalMaterialLocalizations.delegate
    - GlobalWidgetsLocalizations.delegate
    - GlobalCupertinoLocalizations.delegate
  supportedLocales:
    - en
    - ko
  ...

3. 언어 파일 사용

MaterialApp 또는 CupertinoApp 위젯의 localizationsDelegatessupportedLocales 속성을 사용하여 앱에서 지원할 언어와 해당 언어 파일을 지정할 수 있습니다.

MaterialApp(
  localizationsDelegates: [
    // ...
    GlobalMaterialLocalizations.delegate,
    GlobalWidgetsLocalizations.delegate,
    GlobalCupertinoLocalizations.delegate,
    // ...
  ],
  supportedLocales: [
    const Locale('en', ''),
    const Locale('ko', ''),
  ],
  ...
)

결론

Flutter를 사용하면 간단한 설정으로 앱을 다국어로 지원할 수 있습니다. 언어 파일을 만들고 이를 사용하여 앱에서 지원할 각 언어에 대한 텍스트를 쉽게 관리할 수 있습니다. 이를 통해 사용자들이 자신의 언어로 앱을 즐길 수 있는 환경을 제공할 수 있습니다.

참고: Flutter 다국어 지원 공식 문서