Android での文字列リソースのローカライズ

Apr 08 2023
Android は広く使用されているモバイル オペレーティング システムであり、世界中に何百万人ものユーザーがいます。Android デベロッパーとして、アプリがさまざまな国や文化のさまざまなユーザーに対応できるようにすることが不可欠です。
UnsplashのZによる写真

Android は広く使用されているモバイル オペレーティング システムであり、世界中に何百万人ものユーザーがいます。Android デベロッパーとして、アプリがさまざまな国や文化のさまざまなユーザーに対応できるようにすることが不可欠です。これを実現する 1 つの方法は、文字列リソースを含むアプリのコンテンツをさまざまな言語にローカライズすることです。これにより、ユーザーがアプリのコンテンツを理解できるようになり、ユーザー エンゲージメントとアプリの評価が向上します。このブログでは、Android で文字列リソースをローカライズする方法に関する基本的なチュートリアルを提供します。これには、開始に役立つステップバイステップの手順とベスト プラクティスが含まれます。

デフォルトのリソースがすでにあることを確認する

文字列のデフォルトのリソースはres/value/strings.xml. このリソースは、新しいプロジェクトを作成すると自動的に作成されます。名前を削除したり変更したりしないでください。

デフォルトのリソースが重要な理由

アプリが特定のロケールに特定の値を提供しない場合、アプリは既定のリソースから値を読み込むためです。アプリが名前付きの文字列button_textとインドネシアのアプリのロケールを読み込む必要があると想像してください。ただし、インドネシアのリソースで値を提供していないことを忘れていました。次に、アプリはデフォルトからロードします。デフォルト リソースにまだ値がない場合は、エラーが発生します。

デフォルト値を定義します。たとえば、このように

ローカライズされたリソースの作成

ローカライズされたリソースを作成するには、 を右クリックしますstrings.xmlNew→を選択Value Resource File

ファイル名に「文字列」を入力し、使用可能な修飾子でロケールを選択します。

>>次に、ボックスの中央にあるアイコンの付いたボタンをクリックします。右側に言語と地域のリストが表示されます。

ローカライズする言語を選択し、[OK] をクリックします。

これで、新しいstrings.xmlファイルが作成されました。新しいものには、ファイル名の後ろに言語 ID の説明があります。例: (id)

次に、デフォルト リソースと同じ名前の文字列を定義し、ローカライズの言語に従って値を入力します。

プロジェクトに文字列をロードする

通常どおり、id を使用して文字列を読み込みます。与えられる値は電話のロケールによって異なります

getString(R.string.app_name)

参照

アプリのローカライズ | Android デベロッパー