[flutter] easy_localization으로 플러터 앱의 지역화된 게임 기능 구현하기

앱을 다국어 지원하려면, 게임 내의 텍스트와 문자열을 각 언어에 맞게 번역하여 제공해야 합니다. 이를 가능하게 하는 flutter 패키지 중 하나인 easy_localization을 사용하여 지역화된 게임 기능을 구현하는 방법을 알아보겠습니다.

1. easy_localization 패키지 설치하기

먼저, pubspec.yaml 파일에 easy_localization 패키지를 추가합니다.

dependencies:
  flutter:
    sdk: flutter
  easy_localization: ^3.0.0

그리고 패키지를 설치합니다.

$ flutter pub get

2. 지원할 언어 설정하기

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

import 'package:flutter/material.dart';
import 'package:easy_localization/easy_localization.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await EasyLocalization.ensureInitialized();

  runApp(EasyLocalization(
    supportedLocales: [Locale('en', 'US'), Locale('ko', 'KO')],
    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,
      // ...
    );
  }
}

3. 지역화된 게임 리소스 사용하기

이제, 앱 내의 문자열을 지역화된 텍스트로 변경해야 합니다. easy_localization을 사용하여 다국어 지원 문자열 리소스를 로드하고, 게임 내에서 해당 문자열을 사용할 수 있습니다.

Text('hello'.tr())

위 코드는 현재 선택된 언어에 따라 ‘hello’ 문자열을 해당 언어로 자동으로 변경합니다.

결론

이제 easy_localization 패키지를 사용하여 앱의 지역화된 게임 기능을 통해 한국어 및 다른 언어로 게임을 쉽게 번역할 수 있습니다. 위의 단계를 따라하면, 플러터 기반 게임을 간단하게 다국어로 지원할 수 있을 것입니다.

참고 문헌: