◉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-04-09中級

Rork Max EAS Build × App Store 申請エラー完全解決ガイド:証明書から審査通過まで

Rork Max で EAS Build のコードサイニングエラー・証明書有効期限切れ・App Store Connect API の設定ミスから App Store 審査のリジェクトまで、ストア公開を阻む全エラーを体系的に解決します。

Rork Max236EAS Build22証明書App Store91コードサイニングトラブルシューティング85プロビジョニング

Rork Max で素晴らしいアプリを作り上げたのに、いざ App Store に公開しようとしたら EAS Build でコードサイニングエラーが出たり、App Store Connect の申請画面でエラーが出て前に進めなかったりする経験をされた方は多いはずです。

この壁は、アプリ開発の中でも特に技術的な知識が求められるフェーズです。しかし適切な手順と問題ごとの対処法を知っていれば、確実に突破できます。ここではRork Max で App Store 公開を阻む全てのエラーパターンと解決策を体系的に解説します。

EAS Build のコードサイニングエラー

エラーカテゴリ1:証明書関連エラー

症状:Error: No matching signing credentials found for com.yourapp.bundleid

このエラーは、ビルドに必要な Apple Distribution Certificate が EAS Credentials に設定されていない時に発生します。

解決手順

まず現在の EAS Credentials の状態を確認します。

# プロジェクトディレクトリで実行
eas credentials
 
# または Expo ダッシュボードで確認
# https://expo.dev/accounts/[username]/projects/[slug]/credentials

証明書が存在しない場合、EAS CLI に自動管理させるのが最も簡単です。

# eas.json で自動管理を有効化
{
  "build": {
    "production": {
      "ios": {
        "credentialsSource": "remote"  # EAS が自動管理
      }
    }
  }
}
 
# 認証情報のクリア&再作成
eas credentials --platform ios
# 「Remove credentials」→「Set up credentials」の順に選択

症状:Certificate has expired or is not yet valid

証明書の有効期限が切れています。Apple Distribution Certificate の有効期間は1年です。

# 期限切れ証明書を確認
eas credentials --platform ios
 
# 新しい証明書を作成
# 1. Apple Developer Console でDistribution Certificateを削除
# 2. EAS で再作成
eas credentials --platform ios
# → 「Distribution Certificate」→「Generate new certificate」を選択

エラーカテゴリ2:プロビジョニングプロファイル関連エラー

症状:Provisioning profile doesn't match the bundle identifier

アプリの Bundle Identifier とプロビジョニングプロファイルが一致していません。

# app.json / app.config.js で Bundle ID を確認
# ios.bundleIdentifier が Apple Developer Console と一致しているか確認
 
# プロビジョニングプロファイルを再作成
eas credentials --platform ios
# → 「Provisioning Profile」→「Create a new provisioning profile」を選択

症状:Device is not included in the provisioning profile(開発ビルドのみ)

開発用デバイスの UDID がプロビジョニングプロファイルに登録されていません。

# デバイスを登録
eas device:create
 
# プロビジョニングプロファイルを再生成
eas credentials --platform ios
# → 「Provisioning Profile」→「Sync devices from Apple portal」を選択

エラーカテゴリ3:App Store Connect API キーの設定エラー

EAS が App Store Connect に自動でビルドをアップロードするには、App Store Connect API キーの設定が必要です。

App Store Connect API キーの正しい設定手順

1. https://appstoreconnect.apple.com/access/api にアクセス
2. 「+ 」ボタンで新しいキーを作成
3. 名前: "EAS Build" 等、役割: "App Manager" を選択
4. .p8 ファイルをダウンロード(一度しかダウンロードできない)
5. Key ID と Issuer ID を控える
# EAS に API キーを設定
eas credentials --platform ios
# → 「App Store Connect API Key」→「Add an API key」を選択
# → .p8 ファイルのパス・Key ID・Issuer ID を入力

App Store Connect 申請時の ITMS エラー

EAS Build が成功しても、App Store Connect へのアップロード時にエラーが出ることがあります。

よくある ITMS エラーと対処法

ITMS-90725:SDK 最小バージョンエラー

Error: ITMS-90725: SDK Version Issue

App Store の最新審査要件(DeploymentTarget)を満たしていません。

// app.json で最小OSバージョンを更新
{
  "expo": {
    "ios": {
      "deploymentTarget": "16.0"  // 現在の Apple 要件に合わせる
    }
  }
}

ITMS-90426:バイナリ構成エラー

Error: ITMS-90426: Invalid Code Signing Entitlements

アプリが使用しているエンタイトルメント(権限)が、App ID の設定と一致していません。

Apple Developer Console でApp IDの設定を確認し、必要なCapabilitiesが有効化されているか確認します。Push Notifications、In-App Purchases などの機能を使っている場合、App ID でその機能が有効になっている必要があります。

ITMS-90161:バイナリが App Store 要件を満たしていない

Error: ITMS-90161: The binary may only be built with Swift version X or later

Xcode のビルドツールバージョンの問題です。EAS Build のビルドイメージを最新版に更新します。

// eas.json でビルドイメージを指定
{
  "build": {
    "production": {
      "ios": {
        "image": "latest"  // 常に最新を使用
      }
    }
  }
}

App Store 審査でリジェクトされた時の対処

ビルドのアップロードが成功しても、App Store の審査でリジェクトされることがあります。主なリジェクト理由と対処法を解説します。

Guideline 4.0:デザイン・クラッシュ系リジェクト

4.3:Minimum Functionality(最低限の機能要件)

アプリに十分な機能や価値がないと判断された場合。Rork Max で作ったシンプルなアプリが対象になることがあります。

対処法として、アプリが提供するユニークな価値を審査メモに明記します。「既存のウェブサイトのラッパーに過ぎない」と判断されないよう、ネイティブ機能(カメラ、プッシュ通知、位置情報など)を少なくとも1つ以上活用するよう改善しましょう。

4.2:Minimum Functionality + Crash

審査中にアプリがクラッシュした場合は即リジェクトです。申請前に必ず実機で徹底的なテストを行ってください。

Guideline 5.0:法的・コンテンツ系リジェクト

5.1.1:プライバシーポリシーの不備

何らかのデータを収集するアプリには必ずプライバシーポリシーが必要です。特にAdMob(広告)やAnalytics(分析)を使っている場合は必須です。

5.1.2:データ使用目的の不明確な説明

Info.plist での権限リクエスト文言が不十分な場合。カメラ・マイク・位置情報などの使用目的を具体的に記述する必要があります。

// app.json でのアクセス許可文言の例
{
  "expo": {
    "ios": {
      "infoPlist": {
        "NSCameraUsageDescription": "アバター写真を撮影するためにカメラを使用します",
        "NSLocationWhenInUseUsageDescription": "近くの店舗を表示するために位置情報を使用します"
      }
    }
  }
}

審査通過率を高める申請前チェックリスト

審査に提出する前に、以下の項目を確認してください。

技術的チェック:実機(iPhone/iPad)でテストしてクラッシュが0件であることを確認します。各画面で想定通りの操作が可能かを確認します。ネットワーク切断状態での挙動を確認します。

コンテンツチェック:プライバシーポリシーのURLが正しく機能することを確認します。ストアの説明文に実際の機能と乖離がないかを確認します。スクリーンショットが最新のUIを反映しているかを確認します。

メタデータチェック:アプリ名・説明文・キーワードに誤解を招く表現がないかを確認します。年齢レーティングが実際のコンテンツと一致しているかを確認します。

App Store Connect 設定チェック:カテゴリが適切に設定されているかを確認します。価格・地域設定が意図通りになっているかを確認します。

リジェクトされた後の再申請手順

リジェクト通知が来た場合は、App Store Connect のメッセージセンターで具体的なリジェクト理由を確認し、修正後に以下の手順で対応します。

App Store Connect の「Resolution Center」で審査チームに修正内容を報告します。修正したビルドをアップロードして再審査に提出します。同じ問題が繰り返されている場合は Apple の審査チームに直接質問することもできます。

全体を振り返って

Rork Max での App Store 公開において発生するエラーは、大きく「EAS Build のコードサイニング」「App Store Connect への提出時のITMSエラー」「審査リジェクト」の3フェーズに分かれます。

EAS Build のエラーはほとんどが証明書とプロビジョニングプロファイルの問題で、eas credentials コマンドで再設定することで解決できます。App Store Connect 提出時のエラーはメッセージを読んで対応するデプロイメント設定を調整します。審査リジェクトは具体的なガイドライン番号を確認して的確に修正を加えます。

どのフェーズの問題も、エラーメッセージをそのまま Rork に共有すれば、適切な修正を提案してもらえることが多いです。ぜひ本記事と組み合わせて活用してください。

シェア

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

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

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

もしこの記事がお役に立ちましたら、チップ(¥150)で応援いただけると大変励みになります。広告なしでの運営を続けるため、皆さまのご支援が大きな力になっています。

関連記事

⬡ 開発ツール2026-09-21
exit code 0 で止まるビルド — ログを黙らせていた設定と、空ファイルを通した存在チェック
eas build --local が exit code 0 but produced no further output で止まる件と、0 バイトのスタブが埋め込まれず dyld で落ちる件。どちらも原因は出力を減らす設定でした。自分のスクリプトを棚卸しする手順まで書き残します。
⬡ 開発ツール2026-08-20
ベータ SDK でビルドしたアプリは、TestFlight には配れても審査には出せません
ベータ版の Xcode でビルドしたアプリは TestFlight には配布できますが、App Store の審査には提出できません。手元のビルドがどの SDK で作られたかを確認する方法と、eas.json で提出用ビルドを守る設定をまとめました。
⬡ 開発ツール2026-05-15
Rork Max Android アプリが古い OS バージョンだけクラッシュする原因と Java 8 デシュガリング修正
Rork Max で生成した Android アプリが古い OS バージョン(Android 6〜8 など)でのみクラッシュする問題の診断方法と、Java 8 デシュガリング設定による根本解決を解説します。