Androidアプリを多言語化する方法

この記事では、アプリを多言語化するにあたってやるべきことを一通り記しておきます。

 

アプリ内の言語を翻訳する

まず初めにやるべきこと。「削除しますか?」とか「設定」とか、そういうのを1個1個英語に直していきます。

ここでポイントになってくるのが、アプリ内に出てくる言語は、すべてリソースファイル(strings.xmlなど)にまとめておくこと。 当然じゃん、と思うかもしれませんが。1個でも直に書いてしまってるのがあると後が死ぬほどめんどいです。

strings.xmlの翻訳の仕方

  1. 左側のプロジェクトツールウィンドウを"Android"から"Project"に切り替えます。

    f:id:danook:20201103152823p:plain

  2. app > src > main > resに"values-b+ja"というフォルダを追加します

    f:id:danook:20201103153137p:plain

  3. values-b+ja内に必要なリソースファイル(strings.xmlなど)を複製し、values内のものはデフォルトの言語(英語)に、values-b+ja内のものは日本語にします。

そしてここまでで分かるように、最初に日本語版を作ってしまうと、

  • 英語に翻訳する

という作業に加え、

  • デフォルトの言語を英語に直す

という作業も加わってしまい、手間が増えます。というわけで、これからアプリを作るのなら(特に、将来多言語化する可能性があるのなら)、まずは英語で開発することをオススメしておきます。詳しくは後述しますが、今はDeepLという最強の武器もあるので、そこまで難しくはないと思います。全部自力だと死にますが。

 

プライバシーポリシーを翻訳する

プライバシーポリシーも日本語のままじゃダメなので、英語に直していきます。こういう長文では特にDeepLが大活躍です。

www.deepl.com

DeepLは神です。マジ神です。今までみたいなクソ機械翻訳とは違います。「これはちょっと難しいんじゃない。。?」というような、体言止めの見出しとかも見事に訳してくれます。

ただ、やはり精度に限界はあるので、一応人間がチェックするのが無難かな、という気がします。特に、見出しでの大文字小文字の別など、細かいところの書式にどうしてもブレが出てしまっている印象です。

 

あとは、もしアプリの説明サイトとかを作っているならばそこも一緒に翻訳してしまいます。自分は何ともおせっかいなことにスクショ入りの説明サイトを用意していたので、スクショも全部撮り直さなくてはならず、めちゃくちゃめんどかったです。はい。

 

Play Storeの掲載情報を翻訳する

最後にPlay Storeの掲載情報を用意していきます。ここで翻訳するのは、

  • アプリ名
  • アプリの説明

加えて、

も、もし日本語が含まれていたら直していく必要があります。

アプリの説明とかは、また適当にDeepLとかにやらせておけばいいんですが、下2つがとにかくめんどいです。大変だったら、これらのものはなるべく最初から英語で作っておくとよいかもしれません。

 

まとめ

ここまで、アプリを多言語化するにあたってやるべきことを書いてきましたが、何回か書いた通り、そしてご察しの通り、とにかく面倒です。というわけで、2度目ですが、

  • なるべく最初から英語で作っておく

ことをオススメします。日本語だけで作るか英語だけで作るかと言われると、後者の方がやはりメリットは大きいので。

また、あとから日本語版を付け加える方が、英語版を加えるよりずっと楽です。デフォルトの言語云々とか気にしないで済むし、英語版のアプリに日本語が混じっているのはちょっと問題だけど逆はまあ許容範囲なので。