플러터(Flutter) 애플리케이션을 다국어 지원이 가능하도록 만들기 위해서는 각 언어별 문자열을 따로 관리해야 합니다. easy_localization
패키지를 이용하면 편리하게 이를 구현할 수 있습니다.
easy_localization이란?
easy_localization
은 플러터(Flutter) 애플리케이션의 다국어 지원을 위한 패키지로, 문자열 및 지역화 파일을 손쉽게 관리할 수 있게 해줍니다.
사용 방법
-
의존성 추가
pubspec.yaml
파일에 다음과 같이easy_localization
의존성을 추가합니다.dependencies: flutter: sdk: flutter easy_localization: <latest_version>
-
파일 구조 설정
언어별로 문자열을 관리할 디렉터리를 생성합니다. 예를 들어,
assets/translations
디렉터리를 만들고, 그 안에en.json
,ko.json
과 같은 형식으로 각 언어에 해당하는 JSON 파일을 추가합니다. -
코드에서 사용
main.dart
파일에 다음과 같이EasyLocalization
위젯을 설정하고, 앱에서 문자열을 사용하는 방법은 아래와 같습니다.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(), )); } class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( localizationsDelegates: context.localizationDelegates, supportedLocales: context.supportedLocales, locale: context.locale, // 나머지 앱 코드 ); } } // 사용 예 Text('hello'.tr())
여기서
hello
는 각 언어별로en.json
,ko.json
파일에 정의된 문자열의 key입니다.tr()
함수를 사용하여 현재 설정된 언어에 맞는 문자열을 불러올 수 있습니다.
결론
easy_localization
을 이용하면 플러터 애플리케이션에서 다국어 지원을 쉽게 관리할 수 있습니다. 이 패키지를 사용하면 번거로운 지역화 파일 관리를 극복하고, 사용자가 앱을 편리하게 이용할 수 있도록 지원할 수 있습니다.
더 많은 정보는 easy_localization 공식 문서를 참고하세요.
본 블로그는 easy_localization 패키지의 사용 방법을 소개한 내용입니다.