Membangun aplikasi iOS secara tradisional berarti satu hal: Anda membutuhkan Xcode, dan Xcode berarti macOS. Batasan ini mengganggu jika tim Anda semua berada di Windows atau Linux, atau jika Anda hanya tidak ingin menjaga mesin pembangun Mac.
Kombinasi dari Capacitor (untuk menghasilkan proyek iOS native) dan Capgo Build (untuk mengompilasi dan menandatanganinya di cloud) memungkinkan Anda melakukan pembangunan iOS dan pengiriman ke TestFlight dari workstation Windows.
Panduan ini menunjukkan alur kerja yang praktis yang berfungsi baik dalam tim:
- Buat di Windows seperti proyek web biasa.
- Tetapkan
ios/di repositori Anda (sehingga keadaan asli dapat direproduksi). - Jalankan
cap syncsecara lokal (sehingga build web Anda dicopy ke proyek iOS). - Aktifkan build iOS di awan dengan Capgo Build.
Apa yang Sebenarnya Dibangun Dimana
Ada dua build terpisah dalam aplikasi Capacitor :
- Build Web (JS/HTML/CSS Anda): Anda lakukan ini secara lokal di Windows.
- Build Nativ (arsip Xcode, penandatangan, unggah): Capgo Build melakukan ini di Mac hardware di awan.
Pembeda ini adalah kunci: Capgo Build mengompilasi proyek natif, tetapi ia menunggu aset web Anda sudah disinkronkan ke ios/.
Prasyarat
- Aplikasi Capacitor yang berjalan (apapun frameworknya sudah cukup).
- Akun Pengembang Apple.
- Akses App Store Connect untuk aplikasi yang ingin Anda unggah (untuk pengiriman TestFlight/App Store).
- Your Capgo account and API token (
CAPGO_TOKEN).
1) Buat atau Siapkan Aplikasi Capacitor Anda (Windows)
Jika Anda sudah memiliki aplikasi web, lewati ke langkah-langkah Capacitor.
Contoh dengan Vite:
bun create vite@latest my-app
cd my-app
bun install
Build harus menghasilkan aset statis (untuk Vite ini adalah dist/ dengan default):
bun run build
2) Tambahkan Capacitor dan Platform iOS
Instalasi Capacitor:
bun add @capacitor/core @capacitor/ios
bun add -d @capacitor/cli
Inisialisasi dan buat folder platform iOS:
bunx cap init
bunx cap add ios
Pada titik ini Anda akan memiliki sebuah ios/ direktori. Kirimkannya ke git. Capgo Bangun mengompilasi apa yang ada ios/di dalamnya, jadi Anda inginnya versi dan dapat direproduksi.
3) Selalu Sinkronkan Asset Web ke iOS Sebelum Membangun
Setiap kali Anda mengubah aplikasi web, lakukan urutan ini di Windows:
bun run build
bunx cap sync ios
cap sync adalah yang mengcopy aset web yang dibangun ke proyek iOS native (file-file Capgo Bangun yang akan sebenarnya mengompilasi).
4) Pasang dan Otentikasi Capgo CLI
Capgo Bangun diaktifkan melalui Capgo CLI. Dengan bun, gunakan bunx:
bunx @capgo/cli@latest login
Atau atur token Anda melalui variabel lingkungan di shell/CI:
export CAPGO_TOKEN="your_api_key_here"
5) Konfigurasi Tanda Tangan iOS untuk Build di Cloud
Untuk membangun iOS Anda membutuhkan bahan tanda tangan:
- Sertifikat distribusi Apple (
.p12dan kata sandinya - Profil pengaturan ("
.mobileprovision) - Aplikasi App Store Connect API kunci ("
AuthKey_XXXXXX.p8) dan metadata (ID Kunci, ID Issuer, ID Tim)
Jika Anda masih perlu menghasilkan file-file ini, ikuti dokumentasi Capgo.
- Menangani Kredensial Bagaimana cara menyimpan dan apa yang perlu disimpan.
- Cara Mendapatkan Sertifikat dan Profil Pengembangan iOS
Rute yang paling mudah adalah: buat/export ulang mereka sekali (sering menggunakan Mac yang tersedia, rekan tim, atau sewa satu kali), kemudian gunakan ulang mereka dari Windows untuk setiap build berikutnya.
Saat Anda memiliki file-file tersebut secara lokal, simpan mereka untuk Capgo Build:
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"
Tip: di CI, simpan file kunci yang dikodekan base64 sebagai rahasia, dekodifikasinya pada waktu eksekusi, lalu jalankan yang sama build credentials save perintah.
6) Mengaktifkan Build iOS dari Windows
Dari folder aplikasi Anda:
bun run build
bunx cap sync ios
bunx @capgo/cli@latest build com.example.app --platform ios --build-mode release
Anda akan melihat log waktu nyata di terminal. Jika kunci App Store Connect telah dikonfigurasi, Capgo Build dapat mengirimkan build hasilnya ke TestFlight secara otomatis.
7) Iterasi Cepat: Update Langsung untuk Perubahan Web-Only
Capgo Build untuk perubahan native:
- menambahkan/menghapus plugin Capacitor
- mengubah izin native
- mengubah ikon/splash
- mengupdate Capacitor
- mengubah perubahan-perubahan Swift/Objective-C
Untuk perubahan UI harian dan perbaikan JavaScript, Anda biasanya ingin Update Langsung Jangan membangun biner native setiap kali (OTA), sehingga Anda tidak perlu membangun kembali biner native setiap kali.
Alur kerja tim yang baik adalah:
- Gunakan Live Updates untuk perubahan web yang sering.
- Gunakan Capgo Build secara berkala ketika perubahan native diperlukan.
Kesalahan Umum Windows (dan Solusi)
- Lupa
cap sync: Jika perubahan UI Anda hilang di build iOS, kemungkinan besar Anda telah membangun aplikasi web tetapi tidak menyinkronkannya keios/. - Tidak memasukkan
ios/: Capgo Build mengompilasi proyek native. Jika folder tidak ada di git (atau tidak ada di konteks build Anda), maka build tidak dapat mengulangi aplikasi Anda. - Perubahan plugin tanpa membangun ulang native: menambahkan plugin adalah perubahan native; rencanakan Capgo Build (dan pengiriman ke toko) setelahnya.
Ringkasan
Anda tidak bisa menjalankan Xcode di Windows, tetapi Anda bisa mengirimkan aplikasi iOS dari Windows: Bungkus aplikasi web Anda dengan __CAPGO_KEEP_0__ (
- Wrap your web app with Capacitor (
ios/Buat aset web secara lokal, kemudian - Gunakan __CAPGO_KEEP_0__ Build untuk mengompilasi, menandatangani, dan mengirimkan binary iOS Anda dari __CAPGO_KEEP_1__.
cap sync. - Use Capgo Build to compile, sign, and submit your iOS binary from the CLI.