◉RORK LABEN
●GPT-6.1 SOL — Rork のモデルメニューに追加(09-29)。Low/Medium/High を選べ、Pro・Max に含まれます●SONNET 5.5 — UI づくりが得意で、Sonnet 5 より出力が速いモデルが選べます(09-28)●SDK 58 — Beta が 09/15 から。stable の案内はまだなく、Expo Go でのプロジェクト実行は 09/03 からログインが必要です●WIDGET — iOS のウィジェットが本番ビルドだけ真っ黒になる原因を追った報告が出ています●OBSERVE — EAS Observe がネイティブクラッシュも記録します(SDK 57.0.21 以降・10/07)●NEW — 起動広告が、背面から戻った回にしか出ていませんでした。「前面に戻った」合図が、…●GPT-6.1 SOL — Rork のモデルメニューに追加(09-29)。Low/Medium/High を選べ、Pro・Max に含まれます●SONNET 5.5 — UI づくりが得意で、Sonnet 5 より出力が速いモデルが選べます(09-28)●SDK 58 — Beta が 09/15 から。stable の案内はまだなく、Expo Go でのプロジェクト実行は 09/03 からログインが必要です●WIDGET — iOS のウィジェットが本番ビルドだけ真っ黒になる原因を追った報告が出ています●OBSERVE — EAS Observe がネイティブクラッシュも記録します(SDK 57.0.21 以降・10/07)●NEW — 起動広告が、背面から戻った回にしか出ていませんでした。「前面に戻った」合図が、…
記事一覧/開発ツール
⬡ 開発ツール/2026-05-08上級

Rork アプリの段階的リリース戦略 — 壊さない本番運用を作る

Rork で出したアプリの本番運用を、iOS Phased Release・Android Staged Rollout・OTA ホットフィックスの三層で守る手順です。停止の判断に使っている数値ライン、Sentry と GitHub Actions による監視、App Store Connect API から一時停止を叩く実装までをまとめました。

Rork584Phased ReleaseStaged Rollout本番運用10ホットフィックス個人開発217

✦ プレミアム記事

更新を出した夜のことを、いまでも思い出します。ビルドを提出して、審査通過の通知を確認して、そこで安心して眠りました。翌朝いちばんに開いたのはメールではなくストアのレビュー欄で、「起動しません」の一行が三つ並んでおりました。

原因は、特定のロケールでだけ日付の解析が落ちるという、地味な一箇所でした。直すこと自体は 20 分で終わります。それよりも、すでに配信されてしまった端末を巻き戻す手段がないという事実のほうが、はるかに重くのしかかりました。

リリースで守るべきなのは「バグを出さないこと」ではなく、「出たときに何割で止められるか」です。 この置き換えをしてから、提出前の胃の痛みがずいぶん軽くなりました。

Rork で作ったアプリも例外ではありません。生成されるコードは驚くほど整っているのですが、どんな実装であっても、すべての端末とロケールとネットワーク状態で動く保証はないからです。だからこそ、時間を注ぐ先は「完璧なコードを書くこと」ではなく「壊れたときに小さく止められる経路を先に用意しておくこと」へ移ります。

ここから書き残すのは、その経路を三層で組み立てる手順です。iOS の Phased Release、Android の Staged Rollout、そして EAS Update による OTA ホットフィックス——それぞれが何を守り、何を守らないのかを、判断に使っている数値と一緒に置いていきます。公式ドキュメントを一度読んだだけでは見えてこない箇所、たとえば Phased Release 中に修正版を出すとどうなるか、Native クラッシュが OTA で直せない理由、そして一時停止には「30 日の予算」があること。実際に触って順番を間違えた経験のあるところから、優先して書きます。

「壊さない本番運用」が必要な理由 — 個人開発者ほど『初日の影響』が致命的になる

法人のアプリ事業なら、リリース直後に不具合が出てもサポートチームが対応してくれます。けれど個人開発の場合、不具合報告のメールに返信できるのは私たち本人だけで、その間にもストアレビューには「最新版で開けません」が並んでいきます。星 1 のレビューが 10 件付くと、その後数ヶ月にわたって新規ダウンロード数が落ち込むことを、私はデータで何度も見てきました。

つまり個人開発者にとって、本番運用の目標は「バグを 0 にすること」ではなく、「バグが出たときに被害をどれだけ小さくできるか」です。これは設計思想の転換でもあります。完璧なリリースを目指すよりも、未完成の状態でも安全に出せる仕組みを作るほうが、結果として長く運用できます。

壁紙アプリを長く運用してきて、いちばん効いた変更は機能追加ではありませんでした。「壊れたとき、どこから戻すか」を平時のうちに決めておいたことです。丁寧に作るというのは一度で正解を出すことではなく、間違えた場所へ戻れるかたちで組んでおくこと——そう考えるようになってから、リリースの段取りそのものが変わりました。段階的リリースは、その考え方をストア側の機能に肩代わりしてもらう仕組みなのだと思います。

三層の安全網の全体像

具体的な実装に入る前に、この記事で組み立てる「三層の安全網」を俯瞰しておきます。

  • 第 1 層: ストア側の段階配信: iOS Phased Release(7 日間で 1% → 100%)と Android Staged Rollout(任意の % 設定)を必ず有効にし、初日に全ユーザーへ配信されることを物理的に防ぎます。
  • 第 2 層: 監視と判断の自動化: Sentry や Firebase Crashlytics でクラッシュ率を継続監視し、しきい値を超えたら GitHub Actions が Slack / Discord に通知。さらに人間の判断が必要なときに必要な情報をすべて添えてアラートします。
  • 第 3 層: 復旧経路の使い分け: JS / TypeScript 層の不具合は EAS Update で OTA 配信して即座に修正、Native 層のクラッシュやポリシー違反は Expedited Review で短時間の再審査を申請します。最悪の場合のロールバック手順も用意しておきます。

この三層を全て準備するのに、最初は半日ほどかかります。けれど一度作れば、それ以降のリリースは「ボタンを押す → 数値を眺める → 必要なら止める」というシンプルな運用になります。

✦

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

この記事の続きを読む

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

この記事で得られること
✦リリース直後の不具合で全ユーザーに影響が出ていた人が、影響範囲を 1〜10% に抑える段階的運用に今日から切り替えられるようになります。
✦Phased Release を一時停止すべきか継続すべきかを数値で判断する基準と、Sentry + GitHub Actions で自動アラートを上げる実装を手に入れられます。
✦Native クラッシュと JS バグを切り分け、OTA で済ませるか Expedited Review を申請するかを正しく選べるようになり、復旧時間を 24 時間から数時間に短縮できます。
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

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

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

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

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

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

関連記事

⬡ 開発ツール2026-04-29
Rork × MetricKit でアプリの本番品質を計測する実装ガイド
Rorkで作ったアプリの本番品質を、Apple純正のMetricKitだけで継続的に計測する設計を解説します。クラッシュ・ハング・スクロール品質・電池消費を、サードパーティSDKなしで見える化する実装パターンです。
⬡ 開発ツール2026-09-19
Rork が書き換えた箇所だけを読む — 再エクスポートのたびに回している差分確認の手順
再エクスポートしたコードを前回との差分として読むための手順です。追跡ファイルを一度消してから重ねる、雑音を外して数える、合流の前に一度止める——この3つで上書き事故を止めています。
⬡ 開発ツール2026-09-03
リンクを押してもアプリが開かないとき、疑うのは assetlinks.json の置き場所より先に署名鍵です
Android App Links が検証されずブラウザに吸われる原因の多くは指紋の食い違いです。keytool の実出力と、手元で照合できる小さな検査スクリプトの実行結果を添えて整理しました。