iOSアプリを通常どおり作ることは、1つのことだけを意味します:Xcodeが必要であり、XcodeはmacOSを意味します。この制約は、チーム全体がWindowsまたはLinuxで作業している場合、またはMacのビルドマシンを維持したくない場合に面倒です。
の組み合わせ Capacitor (ネイティブiOSプロジェクトを生成するために)と Capgo ビルド クラウドでコンパイルおよび署名する (to compile and sign it in the cloud) を使用すると、Windows ワークステーションから iOS ビルドとテストフライトの投稿が可能になります。
このガイドでは、チームで効果的に作業するための実践的なワークフローを紹介します。
- Windows上で通常のWebプロジェクトのように開発します。
- 保管
ios/リポジトリ内に保管します (so native state is reproducible). - Run
cap syncクラウドビルドをトリガーします。__CAPGO_KEEP_0__ Build。 - Trigger an iOS cloud build with Capgo Build.
Capgoアプリには2つの独立した「ビルド」があります。
There are two separate “builds” in a Capacitor app:
- Web build Windows上でローカルに実行します。
- ネイティブビルド (Xcodeアーカイブ、署名、アップロード): Capgo ビルドはMacハードウェアでクラウド内で実行されます。
この分離は鍵です: Capgo ビルドはネイティブプロジェクトをコンパイルしますが、既に同期されたウェブアセットを期待しています。 ios/.
前提条件
- 機能する Capacitor アプリ (どのフレームワークでもかまいません)。
- Apple Developer アカウント。
- アップロードしたいアプリの App Store Connect アクセス (TestFlight/App Store 提出用)。
- あなたの Capgo アカウントと API トークン (
CAPGO_TOKEN).
1) Windows であなたの Capacitor アプリを作成または準備する
あなたがすでにウェブアプリを持っている場合は、 Capacitor のステップに進みます。
Vite の例:
bun create vite@latest my-app
cd my-app
bun install
ビルドは静的アセットを生成する必要があります (Vite の場合、これは dist/ デフォルト):
bun run build
2) Capacitor と iOS プラットフォームを追加します。
Install Capacitor:
bun add @capacitor/core @capacitor/ios
bun add -d @capacitor/cli
iOS プラットフォームフォルダを作成して初期化します:
bunx cap init
bunx cap add ios
この時点で、 ios/ ディレクトリが作成されます。Git にコミットしてください。 Capgo ビルドは、その中に含まれるものをコンパイルするので、バージョン管理と再現性が必要です。 ios/3) iOS ビルド前に常に Web アセットを Sync する
Windows で Web アプリを変更した場合、以下のシーケンスを実行してください。
これは、実際にビルドする __CAPGO_KEEP_0__ ビルドのファイルにコピーされる Web アセットです。
bun run build
bunx cap sync ios
cap sync 4) Capgo と __CAPGO_KEEP_1__ をインストールして認証する
4) Install and Authenticate the Capgo CLI
CapgoはCapgoを使用してビルドをトリガーします。CapgoとCLIを使用して、bunを使用すると、 bunx:
bunx @capgo/cli@latest login
または、環境変数を使用してシェル/CIでトークンを設定します。
export CAPGO_TOKEN="your_api_key_here"
5) Cloud ビルド用の iOS Signing を設定します。
iOS をビルドするには、署名用の材料が必要です。
- Apple Distribution 証明書 (
.p12) とそのパスワード - プロビジョニング プロファイル (
.mobileprovision) - App Store Connect API キー (
AuthKey_XXXXXX.p8) とメタデータ (キーアイデンティティ、発行者 ID、チーム ID)
Capacitor Capgo Build の場合、必要なファイルを生成する必要がある場合は、Capgo ドキュメントを参照してください。
- 管理する資格情報 (保存するものと保存しないもの) iOS 証明書とプロビジョニング プロファイルを取得する方法
- ドキュメントの管理
最も簡単な方法は次のとおりです: 一度にこれらを (よくあるのは、どの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 command.
アプリフォルダから:
実行中のログがターミナルで表示されます。アプリストア接続キーの設定が完了している場合、__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 プラグインの変更
- adding/removing Capacitor plugins
- アイコン/スプラッシュの変更
- __CAPGO_KEEP_0__ ビルドはネイティブの変更に対してです: プラグインの追加/削除
- Capacitor
- Swift/Objective-Cの変更
日常のUI調整やJavaScriptの修正の場合、一般的には ライブアップデート オンライン更新 (OTA) により、毎回ネイティブバイナリを再構築する必要がないためです。
(OTA)、つまり、毎回ネイティブバイナリを再構築する必要がないため
- 良いチームワークフローは
- Capgoを使用して、Capgoを時々ビルドすることがあります。
__CAPGO_KEEP_0__ ビルドをまれに使用する
- Forgetting
cap sync忘れios/. - : UIの変更がiOSビルドに表示されない場合、UIの変更が表示されない可能性があります。iOSビルドに表示されないUIの変更は、Webアプリをビルドしたが、WebアプリをCapgoにSyncしなかった可能性があります。
ios/: Capgo Build はネイティブプロジェクトをコンパイルします。フォルダが Git またはビルドコンテキストにない場合、ビルドはアプリを再現できません。 - : __CAPGO_KEEP_0__ Build の変更はネイティブの再構築を必要とします。: Capgo Build を実行するには、プランしてください (およびストアの提出)。
概要
You cannot run Xcode on Windows, but you can Web アセットをローカルにビルドし、 __CAPGO_KEEP_0__ Build を使用して iOS バイナリをコンパイル、署名、提出します。
- Capacitor (Capgo) で、WindowsからiOSアプリを構築します。
ios/__CAPGO_KEEP_0__ - __CAPGO_KEEP_1__
cap sync. - Use Capgo Build to compile, sign, and submit your iOS binary from the CLI.
Keep going from Build an iOS App from Windows with Capacitor and Capgo Build
WindowsでiOSアプリをビルドする方法について Build an iOS App from Windows with Capacitor and Capgo Build CI/CDの自動化を計画するには Capgo CI/CD Capgo CI/CDの製品ワークフロー Capgo WindowsからiOSアプリをビルド Capgo Native Buildsの製品ワークフロー Capgo 連携機能 Capgo Integrationsの製品ワークフロー CI/CD統合 CI/CD統合の実装詳細 GitHub アクション統合 Capgoの実装詳細についてはGitHubアクション統合で確認してください。