For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /ja/docs/mobile/i18n.md (or send Accept: text/markdown).
モバイルアプリをローカライズする
同梱の 4 ロケール、型チェック済みカタログ、英語フォールバック。
カタログの仕組み
アプリは apps/mobile/src/i18n に英語、ドイツ語、スペイン語、フランス語のカタログを同梱しています — ロケールごとに 1 つの型チェック済み MobileCatalog で、ドットパスと {name} 補間を使った t(key, vars) で参照します。あるロケールで欠けたキーは英語のエントリーにフォールバックし、複数形の文字列は Intl.PluralRules で形を選択します。
ロケールの選択
デバイスのロケールは実行時に Intl API で解決され、言語プレフィックスでマッチし、英語にフォールバックします — pt-BR のデバイスには英語が表示されます。ポルトガル語は MOBILE_LOCALES に含まれないためです。
文字列とロケールの追加
新しいキーは 4 つすべてのカタログに追加してください — 共通のカタログ型は、あるロケールがキーを欠くと型チェックに失敗します。5 つ目のロケールを追加するには、MobileLocale と MOBILE_LOCALES を拡張し、完全なカタログを書きます。モバイルのカタログは Web アプリの i18n とは別物で、自動で同期されるものはないため、両プラットフォームに存在するコピーは両方で翻訳します。
検証とトラブルシューティング
デバイスの言語を、同梱の各ロケールと未サポートのロケールに切り替え、オフラインバナーの相対時刻のような複数形の文字列をすべてのカタログで確認してください。画面に生のドットキーが表示される場合、あるロケールで未翻訳なのではなく、どのロケールにもそのキーがないことを意味します。