ローカリゼーション ガイド (Flutter)

Feb 26 2023
ローカリゼーションは、特定の国または地域の言語、文化、その他の特定の要件を満たすように製品またはサービスを適応させるプロセスです。これには、製品やサービスがターゲット市場に適切であることを確認するために、コンテンツの翻訳、デザイン要素の変更、機能の調整が含まれます。

ローカリゼーションは、特定の国または地域の言語、文化、その他の特定の要件を満たすように製品またはサービスを適応させるプロセスです。これには、製品やサービスがターゲット市場に適切であることを確認するために、コンテンツの翻訳、デザイン要素の変更、機能の調整が含まれます。

ローカリゼーションは、製品やサービスを世界中のユーザーにとってアクセスしやすく使いやすくすることで顧客満足度を向上させ、売上を増加させることができるため、国際的に事業を展開する企業にとって特に重要です。一般的にローカライズされる製品の例には、Web サイト、ソフトウェア アプリケーション、ビデオ ゲーム、マーケティング資料などがあります。

ローカリゼーションは、単なるテキストの翻訳を超えたもので、ターゲット言語に直接対応するものがない可能性のある文化的なニュアンス、イディオム、慣用的な表現を考慮に入れます。また、色、画像、記号などの要素を含む、製品またはサービスのデザインとレイアウトがターゲット市場に適切であることを確認することも含まれます。さらに、ローカリゼーションには、地域の規制や習慣に準拠するための機能の変更が含まれる場合があります。

Flutter では、ローカライゼーションとは、アプリケーションをさまざまな言語や地域に適応させ、世界中の人々にとってよりアクセスしやすく、使いやすいものにするプロセスを指します。アプリをローカライズすることで、開発者はユーザーが独自の言語と形式でアプリを使用できるようになり、ユーザー エクスペリエンスと全体的なエンゲージメントを大幅に向上させることができます。

Flutter にはパッケージを介したローカリゼーションのサポートが組み込まれていますintlが、追加の機能を提供する他のサードパーティ パッケージも利用できます。そのようなパッケージの 1 つが ですeasy_localization。これにより、複数形化、日付と時刻の書式設定などをサポートし、Flutter アプリでローカリゼーションを簡単に実装できるようになります。

easy_localizationお使いの言語をサポートする Flutter でローカリゼーションに使用するには(例としてバングラ語を使用しています)、次の手順に従うことができます。

初め:

easy_localizationプロジェクトに追加: easy_localizationFlutter プロジェクトに追加するには、次の依存関係をpubspec.yamlファイルに追加します。

dependencies:
  easy_localization: ^3.0.0

ローカリゼーション ファイルを作成する:assets/langプロジェクト内にディレクトリを作成し、バングラ言語ファイルを追加します。たとえば、bn.json次の内容のファイルを作成します。

{
  "welcome_message": "আমার অ্যাপে স্বাগতম!",
  "login_button_text": "লগইন করুন",
  "logout_button_text": "লগআউট করুন"
}

Initialize easy_localization: 初期化するには、ファイル内のウィジェットeasy_localizationを使用できます。EasyLocalizationmain.dart

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

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await EasyLocalization.ensureInitialized();
  runApp(
    EasyLocalization(
      supportedLocales: [Locale('bn', 'BD')],
      path: 'assets/langs',
      fallbackLocale: Locale('en', 'US'),
      child: MyApp(),
    ),
  );
}

第4:

アプリでローカライズされた文字列を使用する: アプリでローカライズされた文字列を使用するには、パッケージtrのメソッドを使用しますeasy_localization。たとえば、バングラ語のタイトルと説明を表示するには、次のコードを使用できます。

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Localization',
      localizationsDelegates: context.localizationDelegates,
      supportedLocales: context.supportedLocales,
      locale: context.locale,
      home: Scaffold(
        appBar: AppBar(
          title: Text(tr('title')),
        ),
        body: Center(
          child: Text('description').tr(),
        ),
      ),
    );
  }
}


//Note
Text('title').tr() //Text widget
Text('title'.tr()) //String
Text(tr('title')) //Static function

ついに:

ローカリゼーションをテストする: 最後に、さまざまな言語設定でアプリをテストし、ローカリゼーションが正しく機能していることを確認します。

例:

全体として、easy_localizationあらゆる言語をサポートする Flutter でローカリゼーションを実装するためのシンプルで使いやすいソリューションを提供します。