[flutter] easy_localization으로 플러터 앱의 지역화된 영화관/상영 시간표

앱을 다국어로 제공하는 것은 그 어떤 앱이든 중요한 요소 중 하나입니다. 플러터에서는 easy_localization 패키지를 사용하여 앱을 지역화하는 것이 매우 간단해졌습니다. 이번 블로그에서는 easy_localization을 사용하여 지역화된 영화관 및 상영 시간표를 표시하는 방법을 알아보겠습니다.

1. easy_localization 패키지 설정

먼저 pubspec.yaml 파일에 easy_localization 패키지를 추가하세요.

dependencies:
  flutter:
    sdk: flutter
  easy_localization: ^3.0.0

그리고 다음과 같이 패키지를 가져와 초기화하세요.

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(),
    ),
  );
}

2. 번역 파일 작성

assets/translations 디렉토리에 언어 코드별 디렉토리를 생성한 후, 각각의 디렉토리에 해당 언어의 JSON 파일을 만드세요.

예를 들어, 영어의 경우 en_US.json 파일을 아래와 같이 작성하세요.

{
  "movie_theater_title": "Movie Theaters",
  "movie_schedule_title": "Movie Schedule",
  ...
}

한국어의 경우 ko_KR.json 파일에는 같은 키에 대한 한국어 번역을 작성하세요.

{
  "movie_theater_title": "영화관",
  "movie_schedule_title": "상영 시간표",
  ...
}

3. 번역된 내용 사용

이제 언어에 따라 번역된 내용을 사용할 수 있습니다.

Text('movie_theater_title'.tr()), // 영화관
Text('movie_schedule_title'.tr()), // 상영 시간표
...

이제 앱을 실행하고 언어를 변경하면 해당 언어에 맞는 영화관과 상영 시간표가 표시될 것입니다.

easy_localization을 사용하면 앱의 지역화를 더욱 쉽게 처리할 수 있습니다. 시간과 비용을 절약하면서 사용자들에게 더 나은 다국어 지원 경험을 제공할 수 있습니다.

필요한 경우 해당 지역화된 데이터를 동적으로 가져오거나 API를 통해 관련 정보를 가져오는 작업을 추가할 수도 있습니다.

더 많은 정보를 원하신다면 easy_localization 공식 문서를 확인하세요.