[Android] アプリを各国対応にローカライズする

アンドロイドアプリは日本だけでなく全世界に簡単に配信できます。ただ全世界の言語には対応するのはまた別の話として、ここではせめて英語と日本語の区別ができるようにしてみたいと思います。英語以外の言語も同様にできます。
 

locale_6
locale_7

Android Studio 3.0.1
Android 8.1.0

 



Locale

 
日本国内、日本語を使っているユーザーにはアプリの説明、タイトル名を日本語にします。それ以外は、英語ですね。
フランス人、ドイツ人、中国人にそれぞれ分けられる語学能力があれば、個別に分けてください。
 
例としてデフォルトで英語表示、日本では日本語を表示させる設定を考えてみます。
 

 

Locale ID

 
Locale IDを使って日本語とそれ以外の環境分けができます

 
この Locale.JAPAN は ja_JP を指しています。
デフォルトで英語表示、日本では日本語を表示させるにはこれを使います。
英語で分ける場合は Local.ENGLISH となります。
  

 

実際の使用例として
ボタンを押すと、日本語環境では日本語、それ以外では英語のテキスト表示をさせるアプリを作ってみます
 
MainActivity.java

 
activity_main.xml

 
端末の言語変更:
「設定」「システム」「言語と入力」「言語」から変更します。
Englishしか選択されていない場合は「+ 言語を追加」から
リストを探すか、検索で「j」で日本語にたどり着きます。

その後、右のバーアイコンをつかんで一番上に持ってくると日本語優先になります。

日本語と英語にそれぞれEmulatorを設定してボタンタップ

locale_2
locale_1

それぞれに対応した言語が表示されています。
 

 

strings.xml の設定

 
言語によりコードで条件分けしなくてもstrings.xmlを使って言語設定を取り込む方法があります。

アプリのタイトルやレイアウトファイルの文字設定をローカライズするのに役立ちます。
 
[res] フォルダ以下にある [values] を言語分けにします。
新たに values-ja フォルダと strings.xml ファイルを新たに作ります
[values]:英語(デフォルト)
[values-ja]:日本語
(Packagesにしないと見えないかもしれません)
 
スクリーンショット 2016-03-23 19.30.35
 
それぞれにある strings.xml をそれぞれ場合分けします
values/strings.xml

values-ja/string.xml

app_name をそれぞれ
「TestLocalization」と
「テストローカライズ」に
 
button を
「button」と
「ボタン」
に分けました
 
これを先ほどのコードに追加します。
呼び出し側のレイアウトファイルは
/res/layout/activity_main.xml

 
それぞれの言語設定の実機で実行させるとこうなりました。
 

locale_4b
locale_5

 
 
言語環境に応じてタイトルやレイアウトの文字表記が変わった事が分かります

 

Developer Console の設定

 
最終的にリリースでの設定が必要です
Google Play の Developer Console に入り
https://play.google.com/apps/publish
価格と販売/配布地域を「すべての国を選択」に設定します
 
ストアの掲載情報
英語を最初に設定し
翻訳の追加で日本語を設定します
「デフォルトの言語を変更」により
入れ替えもできます
 

 

日本語追加:
「翻訳を管理」「独自の翻訳を追加」から言語一覧で日本語を選択します。
そうすると「言語(2)」が現れて、英語、日本語での切り替えができるようになります。

英語のタブで、アプリの説明を英語で記述
また、英語でのスクリーンショットを入れます
日本語では同様に日本語での説明
スクリーンショットは日本語のUIでの画像を追加
 
これで、全世界にアプリを公開できます
日本は日本語でそれ以外はデフォルトの英語での説明となります
 

誤字脱字、意味不明で分からにゃイ、
などのご意見はこちらから mailフォーム

ブックマークしておくと便利です このエントリーをはてなブックマークに追加


 


ページのトップへ戻る




シェアする

  • このエントリーをはてなブックマークに追加

フォローする