iOSアプリをビルドすることは通常、Xcodeを必要とすることを意味します。XcodeはmacOSを必要とするため、制約は面倒です。WindowsまたはLinuxで全体のチームがいる場合、またはMacのビルドマシンを維持したくない場合です。
__CAPGO_KEEP_0__と__CAPGO_KEEP_1__ Buildの組み合わせは Capacitor (ネイティブiOSプロジェクトを生成するために使用します)と Capgo ビルド (クラウドでコンパイルおよび署名する) を使用すると、Windows ワークステーションから iOS ビルドと TestFlight 提出が可能になります。
このガイドでは、チームで効果的に機能する実用的ワークフローを紹介します。
- Windows上で通常のWebプロジェクトのように開発してください。
- __CAPGO_KEEP_0__ を
ios/リポジトリ内に保管してください (ネイティブ状態が再現可能になります)。 - __CAPGO_KEEP_0__ を
cap syncローカルで実行してください (WebビルドがiOSプロジェクトにコピーされます)。 - Capgo ビルドをトリガーしてください。
実際にビルドされるものとどこでビルドされるか
Capacitor アプリには、2つの独立した「ビルド」があります。
- Webビルド (あなたのJS/HTML/CSS): Windows上でこのように実行します。
- ネイティブビルド (Xcodeアーカイブ、署名、アップロード): Capgo ビルドはMacハードウェアでクラウド内でこのように実行します。
この分離は鍵です: Capgo ビルドはネイティブプロジェクトをコンパイルしますが、すでにウェブアセットを同期していることを期待しています。 ios/.
前提条件
- A working Capacitor app (any framework is fine).
- Apple Developerアカウント。
- アップロードしたいアプリのApp Store Connectへのアクセス。
- Your Capgo account and API token (
CAPGO_TOKEN).
1) Create or Prepare Your Capacitor App (Windows)
If you already have a web app, skip to the Capacitor steps.
Viteの例:
bun create vite@latest my-app
cd my-app
bun install
ビルドは静的アセットを生成する必要があります (Vite の場合は dist/ デフォルトで):
bun run build
2) iOS プラットフォームに Capacitor と追加してください
Capacitor をインストールしてください
bun add @capacitor/core @capacitor/ios
bun add -d @capacitor/cli
iOS プラットフォームフォルダを作成して初期化してください
bunx cap init
bunx cap add ios
この時点で、ディレクトリが作成されます。Git にコミットしてください。 __CAPGO_KEEP_0__ ビルドは、内部のファイルをコンパイルするので、バージョン管理と再現性が必要です。 ios/ directory. Commit it to git. Capgo Build compiles what is inside ios/Windows であれば、以下のシーケンスを実行してください
これは、Web アプリを変更したときに、Web アセットをネイティブ iOS プロジェクトにコピーする (実際にコンパイルする __CAPGO_KEEP_0__ ビルドのファイル) です。
4) __CAPGO_KEEP_0__ と __CAPGO_KEEP_1__ をインストールして認証してください
bun run build
bunx cap sync ios
cap sync Capgo
4) Install and Authenticate the Capgo CLI
Capgo Build is triggered via the Capgo CLI. With bun, use bunx:
bunx @capgo/cli@latest login
__CAPGO_KEEP_1__ __CAPGO_KEEP_2__
export CAPGO_TOKEN="your_api_key_here"
Capacitorを使用
環境変数を設定してください
- 5) iOSビルド用の署名設定
.p12iOSビルドには署名マテリアルが必要です - Apple Distribution証明書
.mobileprovision) - App Store Connect API key (
AuthKey_XXXXXX.p8App Store Connect __CAPGO_KEEP_0__ キー
If you still need to generate these files, follow the Capgo documentation:
- 資格情報の管理 保存するものと保存しないもの
- How to Get iOS Certificates and Provisioning Profiles
最も簡単な方法は、Macを使用して一度だけ作成/エクスポートし、Windowsでそれを再利用することです。
ファイルをローカルに保存したら、Capgo ビルドのために保存してください。
bunx @capgo/cli@latest build credentials save \
--platform ios \
--certificate ./cert.p12 \
--p12-password "password" \
--provisioning-profile ./profile.mobileprovision \
--apple-key ./AuthKey.p8 \
--apple-key-id "KEY123" \
--apple-issuer-id "issuer-uuid" \
--apple-team-id "team-id"
ヒント: CIで、クレデンシャルファイルをbase64エンコードしてシークレットとして保存し、実行時にはデコードして、同じコマンドを実行します。 build credentials save 6) WindowsからiOSビルドをトリガーする
アプリフォルダから:
実行中のログがターミナルで表示されます。アプリストア接続キーの設定が完了している場合、__CAPGO_KEEP_0__ ビルドは自動的にテストフライトに結果のビルドを送信できます。
bun run build
bunx cap sync ios
bunx @capgo/cli@latest build com.example.app --platform ios --build-mode release
You will see real-time logs in your terminal. If your App Store Connect key is configured, Capgo Build can submit the resulting build to TestFlight automatically.
__CAPGO_KEEP_0__ ビルドはネイティブの変更に対してです:
Capgo Build is for native changes:
- adding/removing Capacitor plugins
- changing native permissions
- アイコン/スプラッシュの変更
- Capacitorの更新
- Swift/Objective-Cの変更
日常のUIの調整やJavaScriptの修正の場合、一般的には リアルタイムの更新 (OTA) により、各回Nativeバイナリを再構築する必要がなくなる。
良いチームワークは
- 頻繁なWebの変更の場合、リアルタイムの更新を使用する。
- Capgo ビルドを時々行う必要がある場合は、Nativeの変更が必要な場合。
Windowsの一般的な誤り (および修正)
- UIの変更がiOSビルドに表示されない場合、iOSビルドに表示されない可能性があります: Webアプリをビルドしたが、Syncしなかったため。
cap syncUIの変更がiOSビルドに表示されない場合、iOSビルドに表示されない可能性があります: Webアプリをビルドしたが、Syncしなかったため。ios/. - Not committing
ios/: Capgo Buildを実行すると、ネイティブプロジェクトがコンパイルされます。フォルダがGitに含まれていない場合 (またはビルドコンテキストに含まれていない場合)、ビルドはアプリを再現できません。 - Pluginの変更はネイティブの再構築が必要: プラグインを追加することはネイティブの変更です; Capgo Buildを実行する計画 (そしてストアの提出) を立ててください。
概要
Windows上ではXcodeを実行できませんが、WindowsからiOSアプリを配信することはできます: __CAPGO_KEEP_0__ ( をリポジトリ内に含めて) をアプリにラップしてください。
- Webアセットをローカルにビルドし、次にCapacitor Buildを実行してiOSバイナリをコンパイル、署名、提出してください。
ios/__CAPGO_KEEP_1__からiOSバイナリをコンパイル、署名、提出してください。 - __CAPGO_KEEP_0__
cap sync. - Use Capgo Build to compile, sign, and submit your iOS binary from the CLI.
WindowsからiOSアプリをビルドするには、CapacitorとCapgoを使用してください。
Capgoを使用している場合 WindowsからiOSアプリをビルドするには、CapacitorとCapgoを使用してください。 CI/CDの自動化を計画する場合、__CAPGO_KEEP_0__ CI/CDと接続してください。 Capgo CI/CDの製品ワークフローでは、Capgo CI/CDを使用します。 Capgo Native Buildsの製品ワークフローでは、Capgo Native Buildsを使用します。 Capgo Integrationsの製品ワークフローでは、Capgo Integrationsを使用します。 for the product workflow in Capgo Native Builds, Capgo Integrations Capgo CI/CDの製品ワークフローでは、Capgo CI/CDを使用します。 __CAPGO_KEEP_0__ Native Buildsの製品ワークフローでは、__CAPGO_KEEP_0__ Native Buildsを使用します。 __CAPGO_KEEP_0__ Integrationsの製品ワークフローでは、__CAPGO_KEEP_0__ Integrationsを使用します。 GitHub アクション統合 GitHub アクション統合の実装詳細について