アプリの多言語化対応の方法

Kotlin×Android

はじめに

Androidアプリを多言語対応(ローカライズ)することで、より多くのユーザーに利用してもらうことができます。本記事では、Android Studio を使用して簡単に多言語対応を行う方法を解説します。

開発環境

Android StudioAndroid Studio Ladybug Feature Drop | 2024.2.2 Patch 2
OSWindows 11 Home

1. 言語リソースの作成

Androidでは、res/values/フォルダ内のstrings.xmlファイルを使用して、アプリのテキストを管理します。多言語対応を行うには、言語ごとに異なるstrings.xmlファイルを作成します。

1.1 strings.xmlの作成

まず、デフォルトのstrings.xmlを確認します。多言語化する場合、デフォルトは英語するのが良いでしょう。

res/values/strings.xml

XML
<resources>
    <string name="app_name">My Application</string>
    <string name="greeting">Hello!</string>
</resources>

次に、追加する言語ごとに新しいフォルダを作成し、対応するstrings.xmlを追加します。右クリックを駆使してフォルダとxmlファイルを追加していきます。

例: 日本語対応(res/values-ja/strings.xml)

XML
<resources>
    <string name="app_name">マイアプリ</string>
    <string name="greeting">こんにちは!</string>
</resources>

例: フランス語対応(res/values-fr/strings.xml)

XML
<resources>
    <string name="app_name">Mon Application</string>
    <string name="greeting">Bonjour!</string>
</resources>

以上が手でフォルダを作成して追加する方法ですが、他の方法もあります。

2. もう一つ言語リソースの作成方法

valuesの中のstrings.xmlの上で右クリック。「Open Translations Editor」をクリックします。

地球儀のマークを押して、追加したい言語を選択します。例えば、日本語ならばJapanese(ja)を選択。

すると、stringsフォルダが作成され、strings.xml(ja)が追加されます。このxmlを直接編集しても良いですが、Translations Editorを利用して各言語の表記を追加していくのが簡単です。

私がやった各言語のxmlファイルの中身をつくる方法は、日本語のstrings.xmlをまず作成し、その中身をコピーして、chatGPTに「アンドロイドアプリの多言語対応のために、次のコードの該当部分を英語にして」の文章とともにコードを貼り付けてお願いすることです。これで簡単に各言語の訳に対応したstrings.xmlが作成できました。

3. システムの言語設定に応じた動作

Androidは、デバイスの言語設定に基づいて適切なリソースを自動的に選択します。例えば、ユーザーのデバイスが日本語に設定されている場合、res/values-ja/strings.xml の内容が自動的に適用されます。

4. アプリ名の多言語化対応

アプリ名称を多言語化対応するには、「AndroidManifest.xml」のandroid:labelの箇所を次のように変更します。

XML
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.sandbox">
   <application
        android:label="@string/app_name"
        ...

おわりに

多言語対応を行うことで、より多くのユーザーに快適に使ってもらえるアプリを作ることができます。ぜひ挑戦してみましょう。

多言語対応で、アプリも世界中の人に愛される予感。

コメント

タイトルとURLをコピーしました