Show navigation Hide navigation

ローカライズのチェックリスト

Android と Google Play により、日本、韓国、インド、ブラジル、ロシアなどの国々で急速に成長している潜在的な顧客基盤が形成され、アプリに対して世界規模のユーザーが提供されます。アプリの配布の可能性を最大限に高め、世界中のユーザーから評価を得ることができるようになるため、アプリのローカライズを強くお勧めします。

ローカライズはアプリ開発サイクル中のさまざまなタスクが関与するため、事前計画が重要となります。このドキュメントで、Google Play でアプリを世界規模のローンチの成功に導くローカライズの重要な側面を明らかにします。

1.ターゲット言語とロケールの特定

ローカライズの準備を行うときの基本的ながら重要な手順は、アプリを配布する国とその国で話されている言語を特定することです。大きな市場が見込まれ、英語や他の世界規模の言語が広く使用されていない国では、アプリのローカライズは特に重要です。

全世界のユーザーに向けて、アプリを 3 つの主なカテゴリ(国、ロケール、言語)で管理できます。これらの中で、ローカライズの主要な考慮事項は言語です(日付、時刻、通貨、または同様な情報の形式が異なるため、ロケールも重要です)。ユーザーは Android デバイスで使用される言語とロケールの両方を管理します。これらはアプリがどのように表示されるかに影響します。

通常は、市場全体の規模と機会、アプリのカテゴリ、競争環境、現地価格設定、財務上の要因などに基づき、最初にターゲットにする国を決定します。次に、ターゲットにする国に基づき、アプリでサポートを必要とする言語を決定します。

次に、ターゲットにする国の一部の言語にローカライズするか、すべての言語にローカライズするかを決定することができます。主な地域言語から始まり、ユーザー基盤が増大するにつれて言語をさらに追加する方法が合理的です。

ターゲットの言語を特定したら、この言語の市場に対する開発、翻訳、テスト、マーケティングの各作業に集中できます。

関連リソース

2.ローカライズ向けデザイン

ローカライズするターゲット言語が決まったら、その言語をサポートするために実行する必要がある作業を見極めて、その作業を早めに計画します。各言語で、語彙の増大、スクリプトの要件、文字間のスペース、改行の制約、左から右のサポートと右から左のサポート、その他の可能性のある要因を検討します。

柔軟性の高い 1 つのレイアウト セットを設計する

レイアウトを作成する際、テキストを保持する UI 要素を余裕を持たせて設計するようにします。オリジナル言語に必要なスペースよりも多くのスペースを確保して(通常は最大 30% 増し)、他の言語にも対応できるようにしておくことをお勧めします。

また、UI ストリングや入力テキストの幅と高さの多様性に対応するため、要素は横方向または縦方向に拡張できる必要があります。テキスト ストリングはどのターゲット言語でも、境界または画面の縁でオーバーラップしないようにしてください。

UI を慎重に設計すると、通常はサポートするすべての言語について 1 つのレイアウト セットを使用できます。詳細については、フレキシブルな UI のビルドを参照してください。

必要に応じて代替レイアウトを使用する

UI がターゲット言語のいずれかでテキストに対応できない場合、その言語のみに代替レイアウトを作成できます。Android では、特定の言語、ロケール、画面サイズなどを適切なリソース修飾子でタグ付けするだけで、これらに対応してロードするレイアウトやその他のリソースのセットを簡単に宣言できます。代替レイアウトにも柔軟性はありますが、アプリを長期にわたって維持することは難しくなります。一般的に、1 つの柔軟性に優れたレイアウトを使用することをお勧めします。

RTL レイアウトとテキストをサポートする

左から右(RTL)スクリプトが使用されている国に配布する場合、RTL のレイアウトおよびテキストの表示と編集のサポートを可能な範囲で実装することを検討してください。

Android 4.1 は双方向テキストに対する制限付きサポートを導入し、アプリが左から右(LTR)スクリプトと右から左(RTL)スクリプトの両方でテキストを表示し、編集できるようになっています。Android 4.2 はレイアウトのミラーリングを含む RTL レイアウトの完全ネイティブ サポートを追加したため、すべてのユーザーに優れたアプリのエクスペリエンスを同様に提供できるようになりました。

少なくとも Android 4.2 のユーザーに対しては、RTL ユーザーのニーズを満たすことに大きな役割を果たす基本的な RTL レイアウト ミラーリングを追加しやすくなっています。

日付、時刻、数値、通貨についてシステムが提供する形式を使用する

アプリがロケールで変わることのある日付、時刻、数値、通貨、その他のエンティティを指定する場合は、アプリ固有の形式ではなく、システムが提供する形式を使用するようにしてください。すべてのロケールが 3 桁ごとの区切り文字、少数点の記号、パーセント記号に同じものを使用しているとは限らないことに注意してください。

Android は日付用の DateUtilsDateFormat、数値と通貨用のString.format() または DecimalFormat、電話番号用の PhoneNumberUtils などのすべてのロケールに適用される形式指定とパターン変換に対応するさまざまなユーティリティを備えています。

ユーザーのロケールに関する想定に基づいて形式をハードコードすると、ユーザーが別のロケールに変えた場合に問題となる可能性があります。システムが提供する形式とユーティリティを使用することを強くお勧めします。

デフォルト リソースのフル セットを組み込む

デフォルト リソースのフル セットを提供して、言語やロケールに関係なく、アプリが正しく動作できるようにします。アプリのデフォルト リソースはどの言語またはロケール修飾子でもマークされていないリソースです。たとえば、res/drawable/ と res/values/ に格納されているリソースです。アプリが現在の言語またはデフォルト セットに存在しないリソースをロードしようとすると、アプリはクラッシュします。

アプリで使用しているデフォルト言語によらず、関連付けられたレイアウト、ドローアブル、ストリングをデフォルトのリソース ディレクトリに言語またはロケールの修飾子なしで格納するようにしてください。

関連リソース

3.ローカライズ向けストリングの管理

ユーザーに優れたエクスペリエンスを提供し、ローカライズを簡素化させるため、アプリの UI ストリングを適切に管理することが重要です。

すべてのストリングを strings.xml に移動する

アプリを作成する際には、ストリングをハード コードしないことを忘れないでください。ハード コードせずに、すべてのストリングをデフォルトの strings.xml ファイルでリソースとして宣言し、アップデートとローカライズを容易にします。strings.xml ファイルのストリングは抽出、翻訳が可能であり、コンパイルされたコードを変更せずに(適切な修飾子付きで)アプリに戻して統合できます。

テキスト付きの画像を作成している場合、そのストリングも同様に strings.xml に配置し、翻訳後に画像を再作成します。

UI ストリングに関する Android のガイドラインに従う

UI を設計し、開発する際には、どのようにユーザーと対話するかについて、十分注意を払うようにしてください。一般的には、使いやすく簡潔な簡明で短いスタイルを使用し、UI 全体で一貫したスタイルを使用します。

記述スタイルと語句の選択については、Android のデザインに関する推奨事項を読み、従うようにしてください。ユーザーにとってアプリがより洗練されたものになり、ユーザーが UI をより簡単に理解できるようになります。

さらに、「アクション バー」や「オプション メニュー」、「システム バー」、「通知」などの UI 要素などについて、可能な場合常に Android の標準用語を使用してください。Android の用語を使用すると、正しく一貫性のある翻訳をより簡単に行えるようになり、より優れた最終製品をユーザーに提供できることになります。

宣言されたストリングに十分なコンテキストを提供する

strings.xml ファイルにストリングを宣言する際には、ストリングが使用されるコンテキストを記述するようにしてください。この情報は翻訳者にとって非常に重要で、より高い品質の翻訳の実現につながります。さらに、ストリングを長期にわたってより効率的に管理する場合にも役立ちます。

以下に例を示します。

<!-- The action for submitting a form. This text is on a button that can fit 30 chars -->
<string name="login_submit_button">Sign in</string>

次の情報を含むコンテキスト情報の提供を検討してください。

  • ストリングの用途はどのようなものか?ユーザーに表示される場所とタイミングは?

  • レイアウトのどこに配置されるか?たとえば、ボタンの場合はテキスト ボックスよりも翻訳の柔軟性が低くなります。

翻訳対象外のメッセージ部分をマークする

多くのストリングには他の言語に翻訳してはならないテキストが含まれています。一般的な例としては、コード、値のプレースホルダー、特殊記号、名前などです。翻訳用のストリングを準備する際は、翻訳せずにそのまま残すべきテキストを特定してマークしてください。これで翻訳者はそのテキストを変更しません。

翻訳対象外としてテキストをマークするには、<xliff:g>プレースホルダー タグを使用します。以下の例では、テキスト "%1$s" が翻訳中に変更されないようになっています(変更されるとメッセージが破壊されます)。

<string name="countdown">
    <xliff:g id="time" example="5 days>%1$s</xliff:g>until holiday
</string>

プレースホルダー タグを宣言する場合には、プレースホルダーの目的を説明する id 属性を必ず追加してください。アプリが後でプレースホルダーの値を置き換える場合、example 属性を提供して置き換えられると予測される値を明確にしてください。

プレースホルダー タグの例をさらにいくつか示します。

<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">

<!-- Example placeholder for a special unicode symbol -->

<string name="star_rating">Check out our 5

    <xliff:g id="star">\u2605</xliff:g>

</string>

<!-- Example placeholder for a for a URL -->

<string name="app_homeurl">

    Visit us at <xliff:g id="application_homepage">http://my/app/home.html</xliff:g>

</string>

<!-- Example placeholder for a name -->

<string name="prod_name">

    Learn more at <xliff:g id="prod_gamegroup">Game Group</xliff:g>

</string>

<!-- Example placeholder for a literal -->

<string name="promo_message">

    Please use the "<xliff:g id="promotion_code">ABCDEFG</xliff:g>” to get a discount.

</string>

...

</resources>

関連リソース

4.UI ストリングとその他のリソースの翻訳

アプリの UI ストリングとリソースをターゲット言語に翻訳することは、ローカライズの重要な段階で、最大限の慎重さと計画性が求められる作業です。

アプリの価値を高める高品質の翻訳を実現するため、翻訳の専門家(プロによる翻訳を購入するを参照してください)と共同で作業することをお勧めします。機械翻訳も選択できますが、ユーザーに優れたエクスペリエンスを提供できない可能性があります。

翻訳の準備をする

翻訳のアウトプット品質はその一部がインプットに左右されるため、strings.xml ファイルがきちんと整理され、適切なコメントが含まれており、正確である必要があります。

翻訳用のストリングを準備するための方法を以下にいくつか示します。

  • ストリングを正しく一貫性のあるフォーマットにします。

  • 上記のローカライズ向けストリングの管理に記載されているストリングの推奨事項に従います。

  • strings.xml ファイルをクリーンアップして未使用のストリングを削除します。

  • ファイルの所有者、作成元、バージョンを特定できるコメントをファイルに配置し、翻訳者向けの特別な指示も入力します。

  • 既存の翻訳がある場合は、これらを特定し、翻訳者に送る発信 zip ファイルまたは他のパッケージに含めます。

  • 翻訳の必要なドローアブルや他のリソースを特定し、これを翻訳者に送るパッケージに含めます。

  • さらに、アプリのストア掲載情報の詳細(アプリのタイトルと説明、リリース情報など)と、その他の全世界で使用するマーケティング素材を翻訳することを検討します。

  • 製品、マーケット、基盤テクノロジーに見られる主要な用語の意味と用途を説明する用語リストを作成します。そのリストを翻訳者に送るパッケージに追加します。

翻訳用のストリングを送信する

開発サイクルの初期段階で翻訳業者に連絡を取り、翻訳のコストと納期に関するアイディアを出してもらいます。コストには複数の繰り返しも含めるようにしてください。オンラインで翻訳業者を探すか、または Google Play デベロッパー コンソールから直接利用できる翻訳サービスを使用します(プロによる翻訳を購入するを参照してください)。

翻訳が完了したら、翻訳の事前確認を行います。すべてのファイルが翻訳されており、エンコードに関する問題が起きる可能性がないかチェックして、宣言フォーマットが変更されていないことを確認します。

すべて問題なしと判断したら、ローカライズされたディレクトリとファイルをアプリのリソースに慎重に移動します。ディレクトリが後から正しくロードされるように、適切な言語とロケールの修飾子でタグ付けしておくようにしてください。

翻訳がアプリに組み込まれたら、ローカライズされたアプリのテストを開始します。

Google Play からプロによる翻訳を購入する

Google Play のアプリ翻訳サービスを利用すると、アプリの翻訳を素早く検索して購入することができます。デベロッパー コンソールで、高品質な翻訳を適正価格で提供する Google 認定済みのサードパーティ ベンダーの一覧を閲覧できます。翻訳してもらいたいストリングをアップロードし、翻訳先言語を選択して、時間と価格を基準に翻訳業者を選択します。

翻訳を購入すると、業者からメールが届きます。翻訳は、利用者と業者の間で、ビジネスに関して直接合意して行われ、翻訳プロセスと成果物の管理や、サポート上の問題の解決については、業者と直接やり取りする必要があります。

関連リソース

5.ローカライズされたアプリのテスト

翻訳済みストリングとリソースを受け取り、これらをアプリに組み込んだら、アプリをテストして、全世界のユーザーへの配布の準備を完了する必要があります。

手動テストは、レイアウトとストリングのローカライズ上の問題の発見に役立ちます。このような問題は、ユーザーの満足度と、最終的にはアプリのユーザーの評価に影響する可能性があります。

テスト環境の設定

ローカライズされたアプリをテストするには、ターゲットとしているマーケットとフォーム ファクタに基づき、複数のデバイス(または仮想デバイス)と画面サイズで構成された環境を設定する必要があります。特定の地域においてデバイスの範囲が異なる可能性があることに注意してください。可能であれば、テスト用デバイスをユーザーが使用する可能性の高い実際のデバイスに合わせてください。

一般的なローカライズ上の問題を見つける

テスト用デバイスごとに、[設定] で言語またはロケールを設定します。アプリをインストールして起動し、すべての UI フロー、ダイアログ、ユーザー インタラクションを使用してナビゲートします。入力フィールドにテキストを入力します。次のような問題がないか確認します。

  • テキストが切り捨てられている、テキストが UI エレメントや画面の縁でオーバーラップしている

  • 改行が見づらい

  • 語句の切れ目や句読点に誤りがある

  • アルファベット順の並び替えに誤りがある

  • レイアウトまたはテキストの方向に誤りがある

  • 未翻訳のテキストがある。翻訳済みストリングの代わりにデフォルトのストリングが表示された場合、これらの翻訳用のストリングを見落としているか、または正しくない言語修飾子でリソース ディレクトリをマークしている可能性があります。

ストリングが翻訳により長くなり、レイアウトに収まらなくなった場合、デフォルトのテキストを簡素化したり、翻訳テキストを簡素化したり、デフォルトのレイアウトを調整したりすることをお勧めします。これらの方法を試しても問題が解決されない場合は、特定の言語用にカスタム レイアウトを作成できます。

デフォルトのリソースに対してテストする

サポート対象のすべての言語とロケールでアプリをテストしたら、サポート対象外の言語とロケールでもう一度テストするようにしてください。これにより、アプリにデフォルトのストリングとリソースのフル セットが含まれていることが確認でき、アプリは、ユーザーが選択した言語に関係なくすべてのユーザーが使用できることを確認できます。

母国語の話し手によるレビューを行う

テスト中またはテスト後に、ローカライズされたアプリのレビューを母国語の話し手に依頼することをお勧めします。レビュー方法の 1 つとして、母国語のユーザーによるベータ テストの実施があります。Google Play はこの方法をサポートします。

6.世界規模のローンチの準備を整える

アプリが翻訳されているということはローカライズの重要な要素ですが、製品がユーザーにとって魅力的で、ユーザーからの注目を集めるようになるには、ターゲットの国でのローンチに向けた準備をして、全世界のユーザー向けの広域的なローンチとマーケティングの計画を作成する必要があります。

Google Play の掲載情報をローカライズする

国際規模のマーケットでアプリを成功に導くためには、Google Play のストア掲載情報のローカライズは必須の要件です。ローカライズされた掲載情報は、デベロッパー コンソールで管理できます。

ローンチに先だって、早い時期にアプリのタイトル、説明、宣伝用テキスト、マーケティング名とプログラム、その他のテキストと画像について決定します。掲載情報のテキストと画像を、早い時期に翻訳工程に回し、ベータ テストが始まった時点で翻訳が完了しているようにします。翻訳されたテキストが準備できたら、デベロッパー コンソールからこれらを追加できます。

さらに、ローカライズされた優れたアプリの作成に尽力したことをユーザーに知らせましょう。言語ごとに UI のスクリーンショットを撮ります。電話、7 インチ タブレット、10 インチ タブレットのものをそれぞれ用意します。スクリーンショットは、サポートする言語ごとにデベロッパー コンソールにアップロードできます。これは他の言語でアプリの掲載情報をブラウズするユーザーに大きな価値をもたらします。

宣伝用の画像とビデオのローカライズ バージョンを作成することも重要です。たとえば、アプリのメイン ビジュアルには、宣伝効果を高める翻訳が必要なテキストが含まれていることがあります。または、ある国に、別の国で実行したものとは異なる視覚的アプローチを採用できます。言語ごとに異なるバージョンの宣伝用画像を作成し、これをデベロッパー コンソールにアップロードできます。宣伝用の動画を提供する場合、そのローカライズ版を作成し、サポートする言語ごとに適切なローカライズ動画へのリンクを追加できます。

主要な国におけるベータ リリースを計画する

アプリをローンチする前は、必ずユーザーから実際のフィードバックを入手することが重要です。これは、新しい言語、国、地域にアプリをローンチする際にも同様です。この場合、アプリのリリース前バージョンを複数の主要なマーケットにわたってユーザーに配布し、ユーザーがフィードバックを提供してバグを報告するための簡単な手段を用意することを強くお勧めします。

Google Play はアプリのベータ プログラムのセットアップを支援します。デベロッパー コンソールにサインインして APK をアップロードしたら、アプリのアルファ版テストとベータ版テストのユーザー グループをセットアップできます。アルファ テスターの小さなグループから始めて、ベータ テスターの大きなグループに移行できます。

追加されたユーザーは、アプリのストア掲載情報にアクセスしてアプリをインストールします。アルファ バージョンまたはベータ バージョンのユーザーはレビューまたは評価を残すことができません。そのため Google Play 上の評価にはリスクがありません。ただし、これはテスター向けにフィードバックを提供するメカニズムをセットアップする必要があることを意味します。Google+ ページまたは Google グループを作成することを検討してください。

受け取ったフィードバックは、優れたエクスペリエンスをユーザーに保証するための UI、翻訳、ストア掲載情報の調整に役立てられます。

国際規模のマーケティングを計画する

複数の国にわたってアプリが注目されるために、国際規模のマーケティングまたは広告キャンペーンを実施することを検討してください。キャンペーンの範囲はサポートできる予算に応じて変化しますが、一般的には、ローンチ時およびローンチ後の地域または国に特化したマーケティングはコスト効率が高く、生産性も高くなります。

ローカライズ版の Google Play のバッジを作成する

国際規模のマーケティングを準備する場合は、Google Play に登録されていることをユーザーに知らせるために、ローカライズ版の Google Play のバッジを組み込むようにしてください。バッジ ジェネレータを使用すれば、ローカライズ版のバッジを簡単に作成できます。これを Web サイトやマーケティング素材で使用できます。高解像度のアセットも使用できます。

ローカライズ版のデバイス アートを作成する

Android デバイスで実行されているアプリの製品ショットを訴求する場合は、そのショットを魅力的にして、最新の Android デバイスを反映するようにしてください。高品質のマーケティング素材を作成するために、ドラッグ アンド ドロップ対応の Device Art Generator を使用して、スクリーンショットを Nexus デバイス上に簡単にはめ込むことができます。

最適化に関するヒントをチェックする

ローンチの準備に際しては、デベロッパー コンソールにサインインしてアプリの最適化に関するヒントをチェックしてください。最適化に関するヒントにより、ローカライズされたストア掲載情報の欠落部分を確認でき、ローカライズ版のローンチを成功させるために役立つ他の注意事項が提供されます。

関連リソース

7.ローンチ後に全世界のユーザーをサポートする

アプリを国際規模でローンチしたら、さまざまな言語とタイム ゾーンにおけるユーザーをサポートする準備を整えます。全世界のユーザー サポートの範囲は予算に応じて異なりますが、少なくともローンチ後は、評価、レビュー、ダウンロードの統計情報を注意深く観察する必要があります。

以下の提案を参照してください。

  • デベロッパー コンソールでアプリの統計情報を使用して、複数の言語と国にわたってダウンロード数、インストール数、アンインストール数、評価を比較します。特定の言語または国でダウンロード数評価が低迷している場合、製品の改良やマーケティング アプローチの変更などの選択肢を検討してください。

  • レビューを定期的にチェックします。Google Play ではすべてのユーザー レビューが翻訳されるため、全世界のユーザーがアプリについてどのように感じているか、どの機能が気に入っているか、どの問題がユーザーに影響を及ぼしているかについて、常に確認することができます。レビューを観察することで、特定の国でユーザーに影響を及ぼす可能性のある技術上の問題を特定することができ、アプリを修正してアップデートできます。

  • 可能な限りレビューに返答します。可能な限り、全世界のユーザーの言語または共通言語でユーザーに対応することをお勧めします。対応できない場合は、翻訳ツールを試すことができます。ただし、結果は予想どおりにならない場合があります。アプリがある言語で人気が高くなっている場合、その言語の母国語の話し手からサポートの支援受けることを検討してください。

  • Web サイト上のサポート リソースへのリンクを置くようにしてください。言語固有のユーザー グループ、Google+ コミュニティ、その他のサポート フォーラムをセットアップすることを検討してください。

上記の実践により、アプリのローカライズ、全世界のユーザーへの宣伝とマーケティング、継続的なサポートの提供を強化することで、多くの新しいユーザーがアプリに注目し、ユーザーのアプリへの愛着心が維持されます。

アプリを Google Play で計画し、作成してローンチする方法について詳しくは、ローンチ チェックリストを参照してください。

関連リソース