RORK LABEN
NATIVE — Rork Max では AR / LiDAR スキャン、Metal を使った 3D、Dynamic Island、Siri Intents、HealthKit、NFC、App Clips、Core ML まで届きますIOS27 — iOS 27 Developer Beta 4 で Siri AI の対象が iPhone 15 Pro / 15 Pro Max・16 シリーズ・17 系へ広がり、応答が初期ベータより明確に速くなりましたDESIGN — iOS・iPadOS・macOS 27 向けの Apple 純正デザインキットが Figma と Sketch 向けに公開されました。新 OS の UI を組む段階で参照できますCANARY — Android 17(Cinnamon Bun)は従来の Developer Preview を廃し、継続更新される Canary ビルドへ移行しました。検証のタイミング設計が変わりますSPARK — Android 17 の Gemini Spark は、アプリを直接操作して配車の予約や注文といった複合的な作業を自動化しますSCALE — Rork は a16z から $2.8M を調達し、月間訪問は74万件規模まで伸びていますNATIVE — Rork Max では AR / LiDAR スキャン、Metal を使った 3D、Dynamic Island、Siri Intents、HealthKit、NFC、App Clips、Core ML まで届きますIOS27 — iOS 27 Developer Beta 4 で Siri AI の対象が iPhone 15 Pro / 15 Pro Max・16 シリーズ・17 系へ広がり、応答が初期ベータより明確に速くなりましたDESIGN — iOS・iPadOS・macOS 27 向けの Apple 純正デザインキットが Figma と Sketch 向けに公開されました。新 OS の UI を組む段階で参照できますCANARY — Android 17(Cinnamon Bun)は従来の Developer Preview を廃し、継続更新される Canary ビルドへ移行しました。検証のタイミング設計が変わりますSPARK — Android 17 の Gemini Spark は、アプリを直接操作して配車の予約や注文といった複合的な作業を自動化しますSCALE — Rork は a16z から $2.8M を調達し、月間訪問は74万件規模まで伸びています
記事一覧/開発ツール
開発ツール/2026-06-18上級

Rork Max の Swift アプリを String Catalog で多言語運用する

Rork Max が生成する Swift アプリを、.xcstrings(String Catalog)を軸に複数言語へ広げる運用設計をまとめました。文字列の抽出から複数形の扱い、翻訳の流し込み、崩れの検査まで、多言語アプリを長く回してきた立場での勘どころを残します。

Rork Max231Swift48ローカライズ7String Catalog多言語

プレミアム記事

新しい言語を一つ足すだけで、なぜこんなに気を揉むのか——個人開発で複数の壁紙アプリを十数言語で出してきて、毎回そう感じていました。文言の取りこぼし、複数形のずれ、長い訳文によるレイアウト崩れ。iPhone 向けではこの作業を何度も繰り返してきましたが、Rork Max がネイティブ Swift を生成するようになって、土台の作り方しだいで負担が大きく変わると分かってきました。

Rork Max は英語の説明から Swift アプリを生成しますが、初期状態の文字列は本文に直接書かれていることが多いです。これを早い段階で String Catalog(.xcstrings)へ寄せておくと、後からの言語追加が驚くほど軽くなります。ここでは、その移行と運用の流れを順に追います。

なぜ String Catalog なのか

かつての Localizable.strings.stringsdict は、キーの管理を人手に頼る部分が多く、コードと訳文がずれても気づきにくいものでした。String Catalog は Xcode が文字列を自動で拾い、未訳・重複・状態(要確認・翻訳済み)を一覧で見せてくれます。複数形も同じファイル内のバリエーションとして扱えるため、別ファイルを行き来する手間が消えます。

私が一番ありがたいと感じるのは「抽出が自動である」点です。コード側で String(localized:) を使っておけば、ビルドのたびに新しい文字列がカタログへ吸い上げられます。文言の取りこぼしという、多言語運用で最も多いミスがほぼ起きなくなります。

観点Localizable.strings 時代String Catalog(.xcstrings)
文字列の抽出手動またはスクリプトビルド時に自動
未訳の把握差分を目視状態列で一覧表示
複数形別ファイル .stringsdict同一ファイル内のバリエーション
使われない文字列気づきにくいSTALE として明示

生成コードを String(localized:) に寄せる

Rork Max が返す初期コードは、たとえばこう書かれています。

Text("お気に入りに追加しました")
Button("もう一度試す") { retry() }

これを String Catalog に乗せるため、文字列を String(localized:) 経由に整えます。SwiftUI の Text は文字列リテラルを自動でローカライズ対象にしますが、キーと既定値を明示しておくと、後の管理がはっきりします。

Text("favorite.added", defaultValue: "お気に入りに追加しました")
 
Button(String(localized: "action.retry", defaultValue: "もう一度試す")) {
    retry()
}

キーは画面や役割で名前空間を切ると、訳者にも文脈が伝わりやすくなります。favorite.added のように「どこの・何の文言か」が読み取れる形にしておくと、十数言語に渡したとき、訳の取り違えが減ります。私はここを曖昧にして痛い目を見たので、最初の整地で必ず揃えるようにしています。

プロジェクトに String Catalog を追加するのは Xcode の File > New File から「String Catalog」を選ぶだけです。あとはビルドすると、String(localized:) で参照したキーが .xcstrings に並びます。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
.xcstrings へ移行し、コードから文字列を自動抽出する3段階の手順
複数形と地域差を String Catalog のバリエーションで安全に扱う設計
翻訳の流し込みと崩れ検査を運用に組み込み、言語追加を軽くする仕組み
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Rork Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

開発ツール2026-07-18
AR で置いたものが翌朝には消えている — ARWorldMap による配置の永続化とリローカライズ設計
Rork Max が生成する AR アプリは、置いた 3D オブジェクトがアプリ再起動で消えます。ARWorldMap の保存タイミング、カスタムアンカーの符号化、リローカライズ待ちの見せ方、成立しない時の逃げ道までを設計として整理しました。
開発ツール2026-07-17
Rork の App Store 提出が「輸出コンプライアンス」で毎回止まるのを設定1行で終わらせる
Rork と Rork Max のビルドを App Store Connect に上げるたびに出る Missing Compliance 警告。免除の判断基準と、app.json / Info.plist で恒久的に消す設定、消えない場合の原因を整理しました。
開発ツール2026-07-16
Rork Max 生成コードの再生成ゾーン設計 — 手を入れるほど失われる「作り直せる自由」を残す
Rork Max の生成コードには「捨てて作り直せる」という見えない資産が乗っています。手を入れるたびに静かに失効するその資産を、台帳とCI検査で管理する設計を、個人開発の実運用からまとめます。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →