Skip to content

追加リソース

Solutions to common issues when building native apps with Capgo Cloud Build.

ビルドエラー

ビルドエラー

アップロード失敗または接続タイムアウト

セクション:アップロード失敗または接続タイムアウト

症状:

  • プロジェクトアップロード中にビルドが失敗する
  • 60秒後にタイムアウトエラーが発生する

解決策:

  1. インターネット接続を確認する

    ターミナルウィンドウ
    # Test connection to Capgo
    curl -I https://api.capgo.app
  2. プロジェクトサイズを削減する

    • 確保する node_modules/ アップロードされていない (自動除外されるはず)
    • プロジェクト内に大きなファイルがあるかどうか確認してください:
    ターミナルウィンドウ
    find . -type f -size +10M
  3. アップロード URL の有効期限を確認

    • アップロード URL は 1 時間で有効期限切れになります
    • 有効期限切れの URL エラーが発生した場合は、ビルドコマンドを再実行してください

10分以内にビルドタイムアウト

10分以内にビルドタイムアウト

症状:

  • ビルド時間が最大許可時間を超えている
  • ステータスは timeout

解決策:

  1. 依存関係を最適化する

    • 未使用のnpmパッケージを削除する
    • ビルド前に npm prune --production ネットワーク問題をビルド中に確認する
  2. ビルド中に依存関係が大きなファイルをダウンロードする可能性がある

    • ネットワーク問題をビルド中に確認する
    • 考慮ロックファイルを使用したプリキャッシュ
  3. ネイティブ依存関係を確認

    ターミナルウィンドウ
    # iOS - check Podfile for heavy dependencies
    cat ios/App/Podfile
    # Android - check build.gradle
    cat android/app/build.gradle
  4. サポートに連絡

    • コンテキスト: Capgo マーケティング ウェブサイト。役割: ショート UI ラベルまたはナビゲーション アイテム。見つける場所: コンポーネント価格/Faq.astro。メッセージキー `contact_support` (サポートに連絡)。
    • アプリが正当に長時間必要な場合

特定のケースの制限を調整できます

認証問題

”API key invalid” or “Unauthorized”

「API キー無効」または「未承認」

セクション「「__CAPGO_KEEP_0__ キー無効」または「未承認」」

  • ビルドが即座に認証エラーで失敗します。
  • 401または403エラー

解決策:

  1. API キーが正しいことを確認してください

    ターミナルウィンドウ
    # Test with a simple command
    bunx @capgo/cli@latest app list
  2. API キーの権限を確認してください

    • キーには write または all __CAPGO_KEEP_0__ キーが正しく読み込まれていることを確認してください
    • Check in Capgo dashboard under API Keys
  3. API キー

    端末画面
    # Check environment variable
    echo $CAPGO_TOKEN
    # Or check your saved credentials file
    cat ~/.capgo-credentials/credentials.json # global
    cat .capgo-credentials.json # local (--local)
  4. 再認証

    端末画面
    bunx @capgo/cli@latest login

”App not found” or “No permission for this app”

Section titled “”App not found” or “No permission for this app””

Symptoms:

  • Authentication works but app-specific error

症状:

  1. 認証は正常ですが、アプリ固有のエラー

    解決策: 1. アプリの登録を確認する
    bunx @capgo/cli@latest app list
  2. アプリ ID が一致しているか確認

    • 確認 capacitor.config.json appId
    • 正しいアプリ ID を使用しているコマンドが確実に使用されていることを確認
  3. 組織へのアクセスを確認

    • 正しい組織にいることを確認
    • API キーはアプリの組織にアクセスできるようにする

iOS ビルドの問題

「iOS ビルドの問題」

Code 署名が失敗しました

「Code 署名が失敗しました」

症状:

  • code署名フェーズでビルドが失敗する
  • Xcodeは証明書またはプロファイルに関するエラーを表示する

解決策:

  1. 証明書のタイプがビルドのタイプと一致していることを確認する

    • 開発用ビルドには開発用証明書が必要
    • App Store用ビルドには配布用証明書が必要
  2. 証明書とプロファイルが一致していることを確認する

    ターミナルウィンドウ
    # Decode and inspect your certificate
    echo $BUILD_CERTIFICATE_BASE64 | base64 -d > cert.p12
    openssl pkcs12 -in cert.p12 -nokeys -passin pass:$P12_PASSWORD | openssl x509 -noout -subject
  3. プロビジョニングプロファイルが有効であることを確認する

    • 有効期限の確認
    • 確認に含まれているのは、アプリIDですか?
    • 確認に含まれているのは、証明書ですか?
  4. 資格情報を再生成する

    • 古い証明書/プロファイルを削除する
    • Apple Developer ポータルで新しいものを作成する
    • 環境変数を再エンコードして更新する

「プロビジョニング プロファイルには署名証明書が含まれていない」

「プロビジョニング プロファイルには署名証明書が含まれていない」

症状:

  • Xcodeはプロファイル内の証明書を見つけることができません

解決策:

  1. Appleから最新のプロファイルをダウンロードする

    • Apple Developer へ移動 → 証明書、ID、プロファイル
    • プロビジョニング プロファイルをダウンロード
    • プロファイルに証明書が含まれていることを確認
  2. プロファイルに証明書が含まれていることを確認

    ターミナル ウィンドウ
    # Extract profile
    echo $BUILD_PROVISION_PROFILE_BASE64 | base64 -d > profile.mobileprovision
    # View profile contents
    security cms -D -i profile.mobileprovision
  3. 正しい証明書でプロファイルを再作成

    • Apple Developer ポータルでプロファイルを編集
    • 配布用証明書が選択されていることを確認
    • ダウンロードして再エンコード

”App Store Connect authentication failed”

App Store Connect 認証失敗”

症状:

  • テストフライトへのアップロードが失敗する
  • API キーに関するエラー

解決策:

  1. API キー認証情報を確認する

    • APPLE_KEY_ID (10文字)を確認する
    • APPLE_ISSUER_ID (UUID形式)を確認する
    • APPLE_KEY_CONTENT が正しく base64 エンコードされていることを確認する
  2. コンピュータの時刻を同期する

    • App Store Connect の認証では、ローカルシステムの時刻から生成された短期 JWT を使用します
    • Apple は、20 分以内に有効期限切れになるトークンを拒否するため、時刻のずれが小さくても有効なキーでも失敗する可能性があります
    • Windows の場合、 設定 > 時間と言語 > 日付と時間 をクリックしてください 現在の時間を同步
    • macOSの場合、 システム設定 > 一般 > 日付と時間 を有効にしてください
    • Linuxの場合、 timedatectl status を確認し、必要に応じてNTPを有効にしてください
    • After syncing, re-run the Capgo build or credential command

    __CAPGO_KEEP_0__のビルドまたは資格情報コマンドを再実行してください Generating Tokens for API Requests __CAPGO_KEEP_0__のリクエスト用トークン生成に関するドキュメントをご覧ください

  3. ローカルで API キーをテストする

    ターミナルウィンドウ
    # Decode key
    echo $APPLE_KEY_CONTENT | base64 -d > AuthKey.p8
    # Test with fastlane (if installed)
    fastlane pilot list
  4. API キーの権限を確認する

    • キーには「開発者」ロールまたはそれ以上が必要
    • App Store Connect -> ユーザーとアクセス -> キーで確認する
  5. キーが取り消されていないことを確認する

    • App Store Connectで確認する
    • 必要に応じて新しいキーを作成する

”Pod install failed”

Pod インストール失敗

Symptoms:

  • ビルドが CocoaPods のインストール中に失敗します
  • Podfile のエラー

解決策:

  1. Podfile.lock がコミットされていることを確認する

    ターミナル画面
    git status ios/App/Podfile.lock
  2. ローカルで pod install をテストする

    ターミナル画面
    cd ios/App
    pod install
  3. 不互換の Pod を確認する

    • Podfile のバージョン間の競合を確認する
    • すべての Pod が iOS のデプロイメントターゲットをサポートしていることを確認する
  4. キャッシュをクリア

    ターミナル画面
    cd ios/App
    rm -rf Pods
    rm Podfile.lock
    pod install
    # Then commit new Podfile.lock

「キーストアのパスワードが不正です」

「「キーストアのパスワードが不正です」」のセクション

症状:

  • 署名中にビルドが失敗
  • Gradle がキーストアに関するエラーを出します

解決策:

  1. キーストアのパスワードを確認してください

    ターミナル画面
    # Test keystore locally
    keytool -list -keystore my-release-key.keystore
    # Enter password when prompted
  2. 環境変数を確認する

    ターミナル画面
    # Ensure no extra spaces or special characters
    echo "$KEYSTORE_STORE_PASSWORD" | cat -A
    echo "$KEYSTORE_KEY_PASSWORD" | cat -A
  3. base64エンコードを確認する

    ターミナル画面
    # Decode and test
    echo $ANDROID_KEYSTORE_FILE | base64 -d > test.keystore
    keytool -list -keystore test.keystore

Symptoms:

  • Signing fails with alias error

ソリューション:

  1. キーストアのエイリアスの一覧を表示

    ターミナルウィンドウ
    keytool -list -keystore my-release-key.keystore
  2. エイリアスが完全に一致することを確認

    • エイリアスは大文字小文字区別
    • KEYSTORE_KEY_ALIASに誤字がないか確認
  3. 正しいエイリアスをキーストアから使用

    ターミナルウィンドウ
    # Update environment variable to match
    export KEYSTORE_KEY_ALIAS="the-exact-alias-name"

Gradle ビルドが失敗しました

Gradle ビルドが失敗しました

症状:

  • 一般的なGradleエラー
  • コンパイルまたは依存関係の問題

解決策:

  1. ローカルでテストビルドを実行してみる

    ターミナルウィンドウ
    cd android
    ./gradlew clean
    ./gradlew assembleRelease
  2. 依存関係が欠けているかどうかを確認する

    • build.gradleファイルを確認する
    • すべてのプラグインが依存関係にリストされていることを確認する
  3. Gradleバージョンの互換性を確認する

    ターミナルウィンドウ
    # Check gradle version
    cat android/gradle/wrapper/gradle-wrapper.properties
  4. Gradle キャッシュをクリア

    ターミナル画面
    cd android
    ./gradlew clean
    rm -rf .gradle build

Symptoms:

  • Build succeeds but upload fails
  • Service account errors

Solutions:

  1. Verify service account JSON

    Terminal window
    # Decode and check format
    echo $PLAY_CONFIG_JSON | base64 -d | jq .
  2. サービスアカウントの権限を確認

    • Play Console → 設定 → API アクセスに移動
    • サービスアカウントがアプリにアクセスできることを確認
    • 「テストトラックへのリリース」権限を付与
  3. Play Consoleでアプリが設定されていることを確認

    • Play Consoleでアプリを作成する必要があります
    • 少なくとも1つのAPKを手動でアップロードする必要があります
  4. API が有効になっていることを確認

    • Google Play Developer API が有効になっていることを確認
    • Google Cloud Consoleで確認

”Job not found” or “Build status unavailable””

Section titled “”Job not found” or “Build status unavailable”””

Symptoms:

  • ビルドステータスを確認できない
  • ジョブIDのエラー

Solutions:

  1. しばらく待ってから再試行

    • ビルドジョブの初期化には数秒かかる場合があります
  2. ジョブIDが正しいことを確認する

    • 初回ビルドのレスポンスからジョブIDを確認する
  3. ビルド期限切れではないか確認する

    • 24時間にビルドデータが利用可能

Symptoms:

  • Build fails before compilation starts
  • Missing files errors

Solutions:

  1. ローカルでCapacitorをsync実行

    Terminal window
    bunx cap sync
  2. Ensure all native files are committed

    Terminal window
    git status ios/ android/
  3. ネイティブファイルがgitignoreされているか確認

    • .gitignoreを確認
    • 重要な設定ファイルがgitignoreされていないか確認

症状:

  • ビルドが成功しているがダウンロードリンクが表示されない

解決策:

  1. ビルド設定を確認

    • アーティファクトの保存先が設定されていない可能性があります
    • アーティファクトのアクセスが利用できない場合はサポートに連絡してください
  2. For iOS TestFlight 提出用

    • App Store Connect を確認してください
    • アップロード後 5-30 分間で処理が完了する場合があります
  3. For Android Play Store

    • Play Console → Testing → Internal testing を確認してください
    • 処理には数分かかる場合があります

CI/CD 関連の問題

CI/CD 関連の問題

GitHub アクション: “コマンドが見つかりません”

GitHub アクション: “コマンドが見つかりません”

症状:

  • bunx @capgo/cli@latest … CI で “コマンドが見つかりません” というエラーで失敗します

解決策:

  1. Bunを設定するbunx __CAPGO_KEEP_0__が利用可能:

    - uses: oven-sh/setup-bun@v2
  2. CLIを実行bunx __CAPGO_KEEP_0__はオンデマンドで取得し、グローバルインストールは必要ありません:

    - run: bunx @capgo/cli@latest build request com.example.app --platform android

GitHubアクション: “シークレットが見つかりません”

「GitHubアクション: “シークレットが見つかりません”」というセクション

症状:

  • ビルド中の環境変数が空です

解決策:

  1. シークレットが正しく設定されていることを確認する

    • リポジトリの設定 → シークレットと変数 → アクションに移動する
    • 必要なすべてのシークレットを追加する
  2. 正しい構文を使用する

    env:
    CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
  3. シークレット名が一致していることを確認する

    • 名前は大文字小文字区別
    • シークレット参照に誤字がないことを確認する

さらにヘルプを取得する

「さらにヘルプ」を含むセクション
ターミナル ウィンドウ
# Add debug flag (when available)
bunx @capgo/cli@latest build request com.example.app --verbose

サポートに連絡する際には、以下を含めてください。

  1. 使用したビルド コマンド

    ターミナル ウィンドウ
    bunx @capgo/cli@latest build request com.example.app --platform ios
  2. エラーメッセージ (フル出力)

  3. ジョブ ID (from build output)

  4. ビルドログ (全てのターミナル出力をコピー)

  5. 環境情報

    ターミナルウィンドウ
    node --version
    npm --version
    bunx @capgo/cli@latest --version

サポートに連絡する

サポートに連絡する

既知の制限事項

制限事項

現在の制限事項:

  • 最大ビルド時間: 10 分
  • 最大アップロードサイズ: ~500MB
  • iOS ビルドには 24 時間の Mac のレンタルが必要です。Mac でビルドすると、最適な使用を確保するためにキューに追加されます。
  • ビルドアーティファクトのダウンロードの可用性は、ビルド先とアーティファクトのストレージの構成に依存します。

これらの制限事項は、フィードバックに基づいて調整される可能性があります。

プレスキャンが私のビルドをブロックしました

プレスキャンが私のビルドをブロックしました

Capgoはローカルで プレスキャン アップロードする前に実行します。報告された問題を修正するか、チェックID:

ターミナルウィンドウ
npx @capgo/cli@latest build request <appId> --platform ios \
--prescan-skip ios/capacitor-server-url-shipped

フルカタログを参照 プレスキャンチェック.