1.2.2 · 開発基盤

アプリ申請を多言語対応しよう

2026.07.12約5分

00Overview

01Story

Situation

1.2.1 でアプリ本体を多言語化した。次は、それをストアに出すための申請情報 — タイトル、サブタイトル、説明文、キーワード — である。

Complication

これも各言語で登録が要る。1 言語だけなら、ストアの管理画面に手入力すればいい。しかし 50 言語となると、管理画面での手入力は現実的でない。しかもキーワードは、ただ訳すだけでなく、各国のローカル検索語に置き換えて ASO (アプリストア最適化) しないと効かない。

Question

大量の言語の申請情報を、どう管理し、どう登録するか?

02Solution

Criteria

  • 申請情報を Git で一元管理できること
  • AI が各言語の文化・検索語に合わせて翻訳できること
  • ストアへ自動で登録できること

Answer

申請メタデータを、アプリごとに 1 つの設定ファイル (store.config.json.txt) にまとめて Git で管理する。日本語を起点に、AI が意味を理解して 50 ロケールへ翻訳し (機械翻訳ではなく)、GitHub Actions から App Store Connect の API 経由で自動登録する。キーワードは各言語で 100 字の上限まで詰め、その国のローカル検索語に置き換えて ASO を最適化する。

Reason

申請情報も、ソースコードと同じく Git で管理できるからである。 ファイルにまとめておけば、履歴も差分も追え、Actions から自動で登録できる。手入力のミスも消える。文字数制限 (タイトル 30 / サブタイトル 30 / 説明 4000 / キーワード 100 など) の検証も、スクリプトで自動化できる。テキストである以上、コードと同じ流儀 — 一か所に集約して自動化する — が効く。

もう一つ、翻訳を AI に任せる利点がある。単なる直訳では、文化に合わない表現や、検索されない語になってしまう。AI に意味を理解させて訳せば、各国のトーンやローカル検索語に合わせられる。センシティブな話題も、地域ごとに本文での触れ方を変えられる (検索流入のためキーワードには共通で残しつつ、本文の明記は国の受容度で調整する)。

Options

  • 各ストアの管理画面で手入力する — 1〜2 言語なら問題ない。しかし言語が増えるほど手作業が破綻し、履歴も残らない。だから最初から Git 管理 + 自動登録にした。

03Result

Good

一度この仕組みを作れば、新しい言語の追加は「翻訳して、登録ワークフローを叩く」だけになる。50 言語でも、言語を 1 つ足すコストはほとんど変わらない。文字数オーバーやローカル検索語の最適化も、スクリプトと AI に載せられる。

Bad

自動化ゆえの事故もある。翻訳文にダブルクオートが混ざって設定ファイルの JSON が壊れたり、文字数が上限を超えたり。だから書き込みのたびに、JSON が壊れていないか (再読み込み) と文字数が制限内かを、必ず検証する工程を挟んでいる。

Follow-up

テキスト (本体・申請) の多言語化が済んだ。最後に残るのが、いちばん手強い画像 — スクリーンショットである。続きは 1.2.3 スクリーンショットを多言語対応しよう