[flutter] easy_localization을 통한 앱의 지역화된 세계명소/유적지 정보

이번 프로젝트에서는 easy_localization 패키지를 사용하여 Flutter 앱을 다국어 지원 앱으로 만들어보려고 합니다. 이 앱은 세계 각지의 명소와 유적 정보를 보여주며, 사용자들이 원하는 언어로 정보를 볼 수 있습니다.

진행 방법

  1. 프로젝트 설정

    먼저, Flutter 프로젝트를 생성하고 easy_localization 패키지를 추가합니다.

    dependencies:
      flutter:
        sdk: flutter
      easy_localization: ^3.0.0
    
  2. 언어 파일 추가

    assets/lang 폴더에 지원할 언어에 따른 JSON 파일을 추가합니다. 예를 들어, en.jsonko.json 파일을 생성하여 각각 영어와 한국어 번역을 포함시킵니다.

    // en.json
    {
      "app_title": "World Landmarks",
      "search_placeholder": "Search landmarks...",
      ...
    }
    
    // ko.json
    {
      "app_title": "세계 명소",
      "search_placeholder": "명소 검색...",
      ...
    }
    
  3. 앱 설정

    main.dart 파일에서 easy_localization을 초기화하고 지원할 언어를 설정합니다.

    void main() async {
      WidgetsFlutterBinding.ensureInitialized();
      await EasyLocalization.ensureInitialized();
    
      runApp(
        EasyLocalization(
          supportedLocales: [Locale('en'), Locale('ko')],
          path: 'assets/lang',
          fallbackLocale: Locale('en'),
          child: MyApp(),
        ),
      );
    }
    
  4. 화면에 다국어 텍스트 표시

    앱 내에서 EasyLocalization.of(context)을 사용하여 지역화된 문자열을 표시합니다.

    Text(EasyLocalization.of(context).app_title)
    
  5. 언어 변경

    사용자가 언어를 변경할 수 있는 설정 화면을 추가해 언어를 변경할 수 있도록 합니다.

결론

이제, easy_localization 패키지를 이용하여 Flutter 앱에 쉽게 다국어화를 적용할 수 있게 되었습니다. 사용자는 지원하는 언어 중에서 선택하여 세계 명소 및 유적에 대한 정보를 얻을 수 있으며, 이를 통해 다양한 언어를 지원하는 앱을 개발할 수 있습니다.

더 많은 정보 및 설정 방법은 easy_localization 공식 문서에서 확인할 수 있습니다.