Flutter 앱을 다국어 지원이 가능한 앱으로 만들기 위해서는 각 언어에 해당하는 데이터를 저장하고 불러오는 기능이 필요합니다. 이번 포스트에서는 Flutter 앱에서 easy_localization 패키지를 사용하여 지역화된 데이터를 저장하고 불러오는 방법에 대해 다루겠습니다.
easy_localization 패키지란?
easy_localization은 Flutter 앱에서 쉽게 다국어 지원을 구현할 수 있도록 도와주는 패키지입니다. 이 패키지를 사용하면 지역화된 문자열, 날짜, 숫자 등을 저장하고 쉽게 불러올 수 있습니다.
지역화된 데이터 저장하기
먼저, easy_localization 패키지를 플러터 프로젝트에 추가해야 합니다. pubspec.yaml
파일에 다음과 같이 패키지를 추가합니다.
dependencies:
flutter:
sdk: flutter
easy_localization: ^3.0.0
다음으로, 앱에서 사용할 각 언어에 해당하는 데이터를 JSON 파일로 작성합니다. 예를 들어, 한국어 및 영어 데이터를 지원하는 경우 assets/translations
폴더에 en.json
및 ko.json
파일을 생성합니다. 이러한 JSON 파일에는 각 언어에 해당하는 문자열 키-값 쌍을 정의합니다.
데이터 불러오기
이제, Flutter 앱에서 easy_localization 패키지를 사용하여 저장된 지역화된 데이터를 불러오는 방법을 살펴보겠습니다. 먼저, 앱의 main.dart
파일에서 다음과 같이 easy_localization 패키지를 초기화합니다.
import 'package:flutter/material.dart';
import 'package:easy_localization/easy_localization.dart';
void main() {
runApp(
EasyLocalization(
child: MyApp(),
supportedLocales: [Locale('en', 'US'), Locale('ko', 'KR')],
path: 'assets/translations',
),
);
}
이제, 저장된 지역화된 데이터를 사용하려는 화면에서는 다음과 같이 tr()
함수를 사용하여 해당 언어에 해당하는 문자열을 불러올 수 있습니다.
Text(
tr('hello'),
),
위의 코드에서 tr('hello')
는 현재 선택된 언어에 해당하는 ‘hello’ 키의 값을 가져옵니다.
easy_localization 패키지를 사용하여 Flutter 앱에서 다국어 지원을 구현하는 방법에 대해 알아보았습니다. 이를 통해 각 언어에 맞는 지역화된 데이터를 효과적으로 저장하고 불러올 수 있습니다.