Lompat ke konten

Buat Build iOS

Bangun dan kirimkan aplikasi iOS ke TestFlight dan App Store menggunakan infrastruktur Mac Capgo yang terintegrasi.

  • Anda akan belajar cara mengunggah aplikasi melalui Capgo Native build
  • Anda akan belajar cara mengonfigurasi sertifikat untuk Capgo Native Build
  • Akun Capgo (cukup dengan trial gratis untuk memulai)
  • Aplikasi Anda sudah terdaftar di Capgo (jalankan bunx @capgo/cli@latest app add jika tidak)
  • Komputer Mac dengan Xcode terinstal (mungkin untuk mengatur build pada mesin linux/windows, tetapi belum terdokumentasi)
  • Akun Pengembang Apple yang valid ($99/tahun) (Anda harus memiliki hak admin atau hak pemilik pada akun Pengembang Apple)
  • Aplikasi Anda harus dapat dibangun dengan sukses melalui Xcode
  • Aplikasi Capacitor
  • Sebuah ikon yang telah dikonfigurasi untuk aplikasi. Aplikasi tanpa ikon tidak dapat diunggah ke App Store.

Sebelum Anda mengatur sertifikat atau mengaktifkan unggahan TestFlight pertama, pastikan akun dan tim Apple sudah siap:

  • aktifkan autentikasi dua faktor untuk akun Apple yang digunakan untuk pendaftaran
  • Pilih jenis anggota yang tepat:
    • Individu / Pemilik Usaha Sendiri: nama pribadi Anda menjadi nama penjual di App Store
    • Pengusaha: memerlukan entitas hukum, nomor D-U-N-S, situs web perusahaan publik, alamat email kerja di domain perusahaan, dan orang dengan otoritas untuk mengikat organisasi ke perjanjian Apple
  • Pakai akun yang dapat mengakses Apple Developer dan App Store Connect untuk sertifikat, catatan aplikasi, API kunci, dan TestFlight
  • Tetapkan ID paket akhir Anda sejak awal. Mengubahnya nanti biasanya berarti melakukan setup App Store ulang
  • Rencanakan item App Store Connect ini sebelum App Review: URL dukungan, URL kebijakan privasi, klasifikasi usia, screenshot, kinerja ekspor, dan detail kontak App Review
Mulai pendaftaran pengembang Apple Melanjutkan pendaftaran pengembang Apple di web Pilih jenis entitas pengembang Apple yang tepat App Store Connect setelah pendaftaran

Sebelum kita bisa memulai berpikir tentang membangun aplikasi dengan Capgo, kita harus terlebih dahulu mengatur dan melakukan build TestFlight pertama secara manual. Ada beberapa kelebihan melakukan build manual pertama:

  • Kamu akan mengatur sertifikat distribusi pada mesin lokal kamu
  • Kamu akan menciptakan catatan App Store jika belum melakukannya sebelumnya
  • Kamu akan dapat mengetahui masalah-masalah terkait proses build yang terkait dengan aplikasi code

Sebelum kita bisa memulai, kamu harus memiliki sertifikat distribusi terinstal pada mesin lokal kamu. Hal ini cukup kompleks, tapi saya akan menjelaskannya di bawah.

  1. Buka Xcode

  2. Klik pada Xcode -> Settings... Jika Anda ingin lebih cepat, Anda bisa menggunakan shortcut Cmd + ,

    Pengaturan Xcode

  3. Lanjutkan ke Accounts Tab Akun Xcode

  4. Cari Apple Account yang telah ditambahkan ke Akun Pengembang Apple Akun Apple yang dipilih di Xcode

  5. Cari tim yang akan Anda gunakan untuk mengirimkan aplikasi Cari tim di Xcode

  6. Klik pada tombol Manage Certificates... button Manajemen sertifikat Xcode

  7. Pastikan Anda dapat melihat sertifikat distribusi di daftar Sertifikat distribusi Xcode

  8. Jika Anda tidak melihatnya, Anda perlu membuat sertifikat baru

    1. Klik pada tombol + dan kemudian pada Apple Distribution Tambahkan sertifikat Xcode
    2. Sertifikat akan dibuat secara otomatis. Anda dapat melihatnya di daftar. Periksa langkah sebelumnya untuk memastikan bahwa Anda melihatnya.

Sekarang Anda telah menginstal sertifikat distribusi, Anda dapat memulai proses pembangunan.

  1. Buka aplikasi di Xcode

    Jalankan bunx cap open ios untuk membuka aplikasi di Xcode.

  2. Cari dan klik pada tombol archive button

    Di toolbar Xcode, cari dan klik pada tombol product -> archive button.

    Toolbar Xcode

  3. Tunggu proses build untuk selesai

  4. Klik pada tombol Distribute App tombol

    Tombol Distribusi Xcode

  5. Pilih TestFlight Internal Only sebagai metode distribusi dan klik pada tombol Distribute Tombol Distribusi Xcode Internal Hanya Uji Coba

    Konfigurasi Rekaman Aplikasi

  6. Isi bidang-bidang berikut:

    Nama: Nama aplikasi Anda - terlihat di App Store

    1. SKU - Kode SKU aplikasi Anda - digunakan untuk mengidentifikasi aplikasi Anda di App Store
    2. __CAPGO_KEEP_0__
    3. Bahasa utama - bahasa utama aplikasi Anda

    Lalu, klik pada tombol next button

    Konfigurasi Xcode TestFlight aplikasi rekam

  7. Jika pembuatan rekaman aplikasi gagal, coba tutup jendela dan coba arsip aplikasi lagi.

  8. Tunggu hingga unggahan selesai

  9. Jika semuanya berjalan lancar, Anda seharusnya melihat layar berikut: Xcode TestFlight unggahan selesai

  10. Lalu, klik pada tombol Done Anda mungkin secara naluriah berpikir bahwa semuanya baik-baik saja sekarang dan Anda akan dapat melihat aplikasi Anda di TestFlight sekarang, tetapi ada beberapa hal lagi yang perlu diselesaikan:

Tambahkan diri Anda ke TestFlight

  1. button
  2. Menghasilkan kelengkapan ekspor sehingga pembangunan menjadi dapat diuji
  3. Isi metadata App Store Connect yang diperlukan seperti URL dukungan, URL kebijakan privasi, dan klasifikasi usia
  4. Siapkan tangkapan layar yang sesuai dengan perangkat yang Anda dukung
  5. Tambahkan detail kontak App Review dan kredential uji sebelum pengajuan produksi

Mari kita mulai dengan yang pertama:

  1. Pergi ke halaman App Store Connect Halaman login App Store Connect Masuk dengan akun pengembang Apple Anda

  2. Masuk dengan akun pengembang Apple Anda

  3. Pilih tim yang Anda gunakan ketika Anda membuat catatan aplikasi. Jika Anda hanya memiliki satu akun pengembang, Anda dapat melewatkan langkah ini. Pilihan tim App Store Connect

  4. Klik pada tombol Apps Tombol App Store Connect apps Temukan aplikasi yang Anda buat pada langkah sebelumnya dan klik pada aplikasi tersebut.

  5. Pilihan aplikasi App Store Connect Klik pada tombol

  6. Tombol App Store Connect testflight TestFlight Klik pada tombol Tombol App Store Connect testflight button

  7. Klik pada tombol Internal Testers plus Tombol App Store Connect apps button Tombol tambah tester internal App Store Connect

  8. Buat grup baru

    Saya suka menamai grup ini “internal”. Anda bisa menamainya apa saja.

    App Store Connect buat grup baru

  9. Klik pada Invite testers Tombol App Store Connect tombol undang tester

  10. Tambahkan diri Anda ke grup

    Cari diri Anda di daftar dan pilih kotak centang di samping nama Anda. (Mungkin Anda perlu memperbarui halaman untuk melihat diri Anda) Lalu, klik pada Add Tombol.

    App Store Connect kotak centang undang tester

  11. Pastikan Anda telah ditambahkan ke grup

    Sekarang, Anda seharusnya melihat diri Anda sendiri dalam kelompok.

    Pengujian App Store Connect

Selamat 🎉 Anda telah menambahkan diri Anda ke TestFlight. Sekarang, ada satu hal lagi yang Anda perlu lakukan sebelum Anda dapat mengonfigurasi Capgo Native Build.

Anda sekarang perlu berjanji kepada Apple bahwa aplikasi Anda tidak menggunakan enkripsi non-standar (seperti algoritma kustom). Jika aplikasi Anda menggunakan enkripsi non-standar, saya sarankan membaca Dokumentasi Apple bagaimana cara mengatasi hal ini. Ada dua cara untuk melakukannya:

  1. Anda dapat melakukannya secara manual setiap kali Anda membangun aplikasi.
  2. Anda dapat mengonfigurasi file plist Anda untuk mengatur nilai ini secara otomatis. false.

Mari kita mulai dengan cara pertama:

  1. Ikuti semua langkah dari bagian sebelumnya untuk menemukan bagian TestFlight di App Store Connect

  2. Klik pada Builds -> iOS App Store Connect membuat iOS tombol

  3. Cari bangun dengan informasi ketidaksesuaian yang hilang dan klik pada Manage App Store Connect manajemen bangun

  4. Pilih opsi yang paling baik menjelaskan aplikasi Anda

    Bagi saya, ini adalah noneTapi mungkin berbeda untuk Anda. Setelah itu, klik simpan

    App Store Connect menyimpan informasi ketidaksesuaian

  5. Aplikasi Anda sekarang harus mengatakan ready to test

    App Store Connect siap untuk diuji

Untuk yang kedua, berikut adalah langkah-langkah:

  1. Buka Info.plist file

  2. Tambahkan kunci berikut:

    <key>ITSAppUsesNonExemptEncryption</key>
    <false/>
  3. Simpan file

Menginstal aplikasi TestFlight dan menerima undangan

Judul bagian “Menginstal aplikasi TestFlight dan menerima undangan”

Sekarang, Anda HAMPIR sedia untuk menguji aplikasi Anda di TestFlight. Sebelumnya, Anda perlu melakukan hal-hal berikut:

  1. Download aplikasi TestFlight dari App Store pada perangkat iOS/iPadOS Anda
  2. Terima undangan untuk menguji aplikasi Anda

Saya akan melewatkan detail tentang cara menginstal aplikasi TestFlight pada perangkat Anda. Jika Anda tidak yakin cara menginstal aplikasi, Google memiliki beberapa panduan yang bagus tentang cara melakukannya.

Untuk menerima undangan, Anda akan menerima surel dari Apple dengan tautan untuk menerima undangan.

  1. Buka surel dari Apple dengan tautan untuk menerima undangan

  2. Klik pada View in TestFlight button button TestFlight email

  3. Klik pada Install button Tombol Instal TestFlight

  4. Instal aplikasi di perangkat Anda

    Jika Anda telah menginstal aplikasi sebelumnya menggunakan Xcode, Anda mungkin melihat layar berikut. Silakan klik pada install button. Tombol Instal Aplikasi TestFlight

  5. Tunggu aplikasi terinstal

  6. Klik pada Open button dan klik

Selamat 🎉 Anda telah menerima undangan untuk menguji aplikasi Anda di TestFlight. Sekarang, Anda dapat mengonfigurasi Capgo Pembangunan Native untuk membangun dan mengirimkan aplikasi ke TestFlight.

Ada beberapa hal yang perlu Anda konfigurasi di Native Build Capgo untuk dapat membangun dan mengirimkan aplikasi ke TestFlight. Berikut adalah daftar hal yang akan Anda sampaikan ke Capgo CLI:

ParameterDeskripsi
--platformPlatform untuk dibangun (ios)
--apple-team-idID Tim Pengembang Apple Anda (ditemukan di Portal Pengembang Apple)
--apple-keyPath ke file API Key App Store Connect Anda (.p8 file)
--apple-key-idID Kunci App Store Connect Anda API
--apple-issuer-idID Penerbit App Store Connect Anda
--certificatePath ke sertifikat distribusi Anda (.p12 file)
--ios-provisioning-profilePeta profil penyediaan (bundleId=path atau hanya jalur untuk profil tunggal)

Contoh perintah:

Jendela terminal
bunx @capgo/cli@latest build credentials save \
--platform ios \
--apple-team-id YOUR_TEAM_ID \
--apple-key '/path/to/AuthKey_XXXXX.p8' \
--apple-key-id YOUR_KEY_ID \
--apple-issuer-id YOUR_ISSUER_ID \
--certificate '/path/to/certificate.p12' \
--ios-provisioning-profile '/path/to/profile.mobileprovision'

Mari kita mulai dengan ID tim. Mencarinya cukup mudah.

  1. Pergi ke Akun Pengembang Apple dan gulir ke bawah

  2. Cari di Team ID

    ID tim di akun pengembang

Kunci Apple, ID kunci Apple dan ID pengembang Apple

Bab berjudul “Kunci Apple, ID kunci Apple dan ID pengembang Apple”

Sekarang, mari kita lanjutkan ke kunci Apple.

  1. Arahkan ke Halaman akses pengguna dan akses App Store Connect

  2. Pilih tim yang benar di dropdown

    1. Klik nama Anda di pojok kanan atas
    2. Klik tim yang ingin Anda gunakan Pilih tim Apple Developer
  3. Klik pada Integrations Tombol Tombol Integrasi App Store Connect

  4. Cari issuer

    Klik pada tombol copy untuk menyalin issuer Salin Issuer App Store Connect

  5. Klik pada tombol plus Tombol Tambah Kunci App Store Connect

  6. Setel nama kunci dan atur akses ke App manager dan klik pada tombol Generate Tombol App Store Connect tambahkan nama kunci, atur akses ke pengelola aplikasi dan buat tombol generasi

  7. Simpan ID kunci

    App Store Connect salin ID kunci

  8. Unduh kunci

    Kunci Download App Store Connect

    Pemberhentian Kunci Download App Store Connect

Selamat 🎉 Anda telah membuat kunci Apple, ID kunci Apple, dan ID penerbit Apple.

Sekarang, Anda sudah siap untuk mengekspor sertifikat. Seperti yang Anda ingat, salah satu langkah pertama dari panduan ini adalah mengatur sertifikat distribusi.

Namun, Apple dalam kebijakan mereka yang tidak terbatas, memutuskan bahwa cara Anda mengekspor sertifikat sangat berbeda dari cara Anda membuatnya 🙃 Mari kita mulai dengan mengaturnya:

  1. Buka Akses Keychain

    1. Klik Command + Space untuk membuka bar pencarian
    2. Cari Keychain Access
    3. Klik pada Keychain Access Aplikasi
  2. Pilih login kategori dan klik pada tombol My Certificates Akses Keychain login kategori Temukan sertifikat Anda dalam daftar

  3. __CAPGO_KEEP_0__

    Sertifikat harus bernama Apple Distribution: [Your Name/Company] (your team ID) Akses Keychain mencari sertifikat

  4. Klik kanan pada sertifikat dan pilih Export Akses Keychain mengexport sertifikat

  5. Simpan sertifikat sebagai .p12 file

    1. Pastikan untuk memilih nama yang baik untuk file sertifikat
    2. Pastikan format file telah disetel menjadi Personal Information Exchange (.p12)
    3. Klik pada tombol Save button

    Dialog simpan sertifikat Keychain Access

  6. Ketika diminta untuk memasukkan kata sandi, Anda dapat memilih:

    • Melewatkan kata sandi (direkomendasikan untuk sederhana): Klik OK tanpa memasukkan kata sandi
    • Memasukkan kata sandi: Jika Anda lebih suka melindungi sertifikat Anda dengan kata sandi, Anda dapat menentukan satu di sini. File yang dilindungi kata sandi sepenuhnya didukung oleh __CAPGO_KEEP_0__ __CAPGO_KEEP_1__ - cukup berikan kata sandi menggunakan .p12 files are fully supported by the Capgo CLI - just provide the password using the --p12-password Dialog simpan kata sandi sertifikat Keychain Access

    Ketika diminta untuk memasukkan “kata sandi kunci login”, berikan kata sandi yang Anda gunakan untuk login ke Mac Anda

  7. button

    Masukkan kata sandi yang Anda gunakan untuk masuk ke Mac Anda. Kemudian, klik tombol. Allow Button.

    Akses Keychain menyimpan sertifikat kunci login keychain kata sandi

Selamat 🎉 Anda telah diekspor sertifikat.

Sekarang, Anda sudah siap untuk mengekspor profil pengaturan. Saya berjanji, ini adalah hal terakhir yang Anda perlu dapatkan dari Apple.

  1. Pergi ke Profesi Pengembang Apple

  2. Pilih tim yang benar di dropdown

    1. Klik nama Anda di sudut kanan atas
    2. Klik tim yang ingin Anda gunakan Tim pengembang Apple pilih tim
  3. Pastikan Anda berada di halaman yang benar Halaman tersebut harus terlihat seperti ini, jika tidak klik pada profiles dalam sidebar

    Halaman profil pengembang Apple

  4. Klik pada tombol + tombol tambah profil pengembang Apple Pilih jenis profil
Pilih

  5. dan klik pada tombol App Store Connect tombol pilih jenis profil pengembang Apple Continue Pilih aplikasi yang ingin Anda buat

    Pilih aplikasi yang ingin Anda buat

  6. Pilih aplikasi yang ingin Anda buat

    Cari aplikasi Anda di dropdown dan klik tombol Continue tombol

    Pilih Apple Developer select app

  7. Pilih sertifikat distribusi yang tepat

    Pilih sertifikat yang Anda ekspor di langkah sebelumnya dan klik tombol Continue tombol

    Jika Anda tidak yakin sertifikat mana yang harus dipilih, kembali ke Keychain Access dan cari sertifikat yang Anda ekspor. Kemudian lihat tanggal kadaluarsa.

    tanggal kadaluarsa sertifikat distribusi Apple Developer

    Berikan nama profil

  8. Berikan nama profil dan klik tombol

    __CAPGO_KEEP_0__ Generate __CAPGO_KEEP_1__

    Nama profil Apple Developer

  9. Unduh profil

    Klik pada tombol Download untuk mengunduh profil

    Unduh Profil Pengembang Apple

Selamat 🎉 Sekarang Anda telah memiliki semua yang Anda butuhkan untuk mengonfigurasi Capgo Native Build.

Anda telah melakukannya! Sekarang Anda telah memiliki semua yang Anda butuhkan untuk mengonfigurasi Capgo Native Build.

Perintah yang perlu Anda jalankan adalah:

Jendela Terminal
bunx @capgo/cli@latest build credentials save \
--platform ios \
--apple-team-id UVTJ336J2D \
--apple-key ./capgo-tutorial/AuthKey_66FGQZB566.p8 \
--apple-key-id 66FGQZB566 \
--apple-issuer-id 0cd4db4a-5598-45b8-9d32-75cdf127d005 \
--certificate ./capgo-tutorial/capgo-build-tutorial-certificate.p12 \
--ios-provisioning-profile ./capgo-tutorial/capgo_native_build_tutorial.mobileprovision

__CAPGO_KEEP_2__

Capgo CLI kreditensial simpan output

Jika Anda sudah menyelesaikan ID Tim, Kunci Apple, ID kunci Apple dan ID penerbit Apple, Sertifikat, dan Profil Pengaturan, Anda sudah memiliki semua yang dibutuhkan untuk CI/CD. Bagian ini hanya menjelaskan cara mengirimkan nilai-nilai tersebut sebagai rahasia GitHub Actions dan variabel lingkungan.

1) Konversi file kredit ke format base64 tunggal baris

Judul bagian 1) Konversi file kredit ke format base64 tunggal baris
Tampilan jendela terminal
# Distribution certificate (.p12)
base64 -i ./capgo-tutorial/capgo-build-tutorial-certificate.p12 | tr -d '\n' > certificate_base64.txt
# Provisioning profile (.mobileprovision)
base64 -i ./capgo-tutorial/capgo_native_build_tutorial.mobileprovision | tr -d '\n' > profile_base64.txt
# App Store Connect API key (.p8)
base64 -i ./capgo-tutorial/AuthKey_66FGQZB566.p8 | tr -d '\n' > apple_key_base64.txt

Dalam GitHub > Repository > Settings > Secrets and variables > Actions, tambahkan:

Nama rahasiaNilai
CAPGO_TOKENToken Anda Capgo API
APP_STORE_CONNECT_TEAM_IDID Tim dari ID Tim
APPLE_KEY_IDID Kunci dari Kunci Apple, ID Kunci Apple dan ID Penerbit Apple
APPLE_ISSUER_IDID Penerbit dari Kunci Apple, ID kunci Apple, dan ID penerbit Apple
BUILD_CERTIFICATE_BASE64Isi konten certificate_base64.txt
CAPGO_IOS_PROVISIONING_MAPDibuat oleh CLI — salin dari .capgo-credentials file
APPLE_KEY_CONTENTIsi konten apple_key_base64.txt
P12_PASSWORD (opsional)Anda .p12 kata sandi jika telah ditetapkan selama ekspor

3) Gunakan variabel lingkungan di workflow GitHub Actions Anda

Bagian berjudul “3) Gunakan variabel lingkungan di workflow GitHub Actions Anda”
.github/workflows/ios-build.yml
name: iOS Cloud Build
on:
workflow_dispatch:
push:
branches: [main]
jobs:
ios-build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Request iOS build with Capgo
run: bunx @capgo/cli@latest build request --platform ios
env:
CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
APP_STORE_CONNECT_TEAM_ID: ${{ secrets.APP_STORE_CONNECT_TEAM_ID }}
APPLE_KEY_ID: ${{ secrets.APPLE_KEY_ID }}
APPLE_ISSUER_ID: ${{ secrets.APPLE_ISSUER_ID }}
BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }}
CAPGO_IOS_PROVISIONING_MAP: ${{ secrets.CAPGO_IOS_PROVISIONING_MAP }}
APPLE_KEY_CONTENT: ${{ secrets.APPLE_KEY_CONTENT }}
P12_PASSWORD: ${{ secrets.P12_PASSWORD }}

Sekarang, Anda sudah siap untuk menjalankan build pertama Anda.

Jalankan perintah berikut untuk membangun aplikasi Anda:

Tampilan terminal
bunx @capgo/cli@latest build request --platform ios

Selamat 🎉 Pada tahap ini, Anda telah berhasil membangun aplikasi Anda dan siap untuk disubmit ke App Store.

The build path App Store biasa mengunggah build ke App Store Connect/TestFlight. Jika rilis CI Anda juga harus menambahkan build TestFlight yang diproses ke versi App Store dan mengajukannya untuk Tinjauan App, lakukan dengan cara: --submit-to-store-review menggunakan rilis build:

Tampilan jendela Terminal
npx @capgo/cli@latest build request com.example.app \
--platform ios \
--build-mode release \
--ios-distribution app_store \
--submit-to-store-review \
--store-release-name "1.2.3" \
--store-release-notes "General improvements" \
--store-release-notes-locale "en-US=General improvements" \
--store-release-notes-locale "nl-NL=Algemene verbeteringen" \
--store-release-notes-locale "fr-FR=Ameliorations generales" \
--no-ios-automatic-release

Perlu memasukkan kunci akun App Store Connect API (APPLE_KEY_ID, APPLE_ISSUER_ID, APPLE_KEY_CONTENT, dan APP_STORE_CONNECT_TEAM_ID). Pengunggahan password aplikasi dan ad_hoc penyebaran tidak dapat mengajukan build untuk tinjauan. --store-release-name adalah versi App Store; jika tidak ada, Capgo membaca MARKETING_VERSION dari proyek Xcode. --store-release-notes adalah teks 'Apa Baru' App Store yang digunakan secara default, dan setiap --store-release-notes-locale "locale=notes" masukan dapat menggantinya untuk lokalasi toko tertentu. Gunakan --ios-automatic-release untuk dirilis secara otomatis setelah persetujuan Apple, atau --no-ios-automatic-release untuk menunggu rilis manual. --ios-testflight-groups masih tersedia untuk distribusi beta eksternal, tetapi tidak diperlukan untuk pengajuan ulasan App Store.

Dengan default, Capgo membangun aplikasi iOS untuk distribusi App Store (TestFlight + App Store). Jika Anda membutuhkan bangun ad-hoc (untuk tes internal atau pengumpulan artefak CI), Anda dapat menggunakan --ios-distribution flag.

  • Anda tidak memiliki atau tidak ingin menggunakan kunci App Store Connect __CAPGO_KEEP_0__
  • You don’t have or don’t want to use an App Store Connect API key
  • tanpa mengajukan ke App Store --output-upload Persyaratan

Judul bagian “Persyaratan”

Pembangunan ad-hoc memiliki

persyaratan yang lebih sedikit Kapan menggunakan mode ad-hoc dibandingkan dengan pembangunan App Store:

KredensialDiperlukan?
Sertifikat distribusi (.p12)Ya
Profil pengiriman ad-hoc (.mobileprovision)Ya
ID Tim (--apple-team-id)Ya
Kunci App Store Connect API (.p8)Tidak
ID Apple / Penerbit IDTidak

Membuat profil provisioning ad-hoc

Membuat Profil Pengaturan Ad-Hoc

Ikuti langkah-langkah yang sama seperti Profil Pengaturan, tetapi pada langkah 5, pilih Ad Hoc sebaliknya dari App Store:

  1. Buka Apple Developer Profiles
  2. Klik tombol + Pilih
  3. button Ad Hoc dan klik Lanjutkan
  4. Pilih aplikasi dan sertifikat distribusi Anda
  5. Pilih perangkat yang ingin Anda daftarkan
  6. Berikan nama dan download profil
Jendela terminal
bunx @capgo/cli@latest build credentials save \
--platform ios \
--ios-distribution ad_hoc \
--apple-team-id YOUR_TEAM_ID \
--certificate './certificate.p12' \
--ios-provisioning-profile './adhoc_profile.mobileprovision'

Tidak --apple-key, --apple-key-idatau --apple-issuer-id diperlukan.

Jendela terminal
bunx @capgo/cli@latest build request \
--platform ios \
--ios-distribution ad_hoc

Untuk mengumpulkan IPA sebagai hasil pembangunan, tambahkan --output-upload:

Jendela terminal
bunx @capgo/cli@latest build request \
--platform ios \
--ios-distribution ad_hoc \
--output-upload

Penggunaan CI/CD dengan pembangunan ad-hoc

Judul bagian “Penggunaan CI/CD dengan pembangunan ad-hoc”

Untuk GitHub Actions, Anda memerlukan lebih sedikit rahasia daripada pembangunan App Store:

github/workflows/ios-adhoc-build.yml
name: iOS Ad-Hoc Build
on:
workflow_dispatch:
jobs:
ios-adhoc:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Request iOS ad-hoc build
run: bunx @capgo/cli@latest build request --platform ios --ios-distribution ad_hoc --output-upload
env:
CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
APP_STORE_CONNECT_TEAM_ID: ${{ secrets.APP_STORE_CONNECT_TEAM_ID }}
BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }}
CAPGO_IOS_PROVISIONING_MAP: ${{ secrets.CAPGO_IOS_PROVISIONING_MAP_ADHOC }}
CAPGO_IOS_DISTRIBUTION: ad_hoc

If your app includes extensions (share extensions, widgets, notification service extensions, etc.), each extension target needs its own provisioning profile. Capgo supports this via the repeatable --ios-provisioning-profile Jendela Terminal

Jika aplikasi Anda termasuk ekstensi (ekstensi berbagi, widget, ekstensi layanan pemberitahuan, dll.), maka setiap target ekstensi memerlukan profil penyediaan sendiri. __CAPGO_KEEP_0__ mendukung hal ini melalui flag yang dapat diulang.

Contoh: Aplikasi + Ekstensi Berbagi
Jendela Terminal
bunx @capgo/cli@latest build credentials save \
--platform ios \
--apple-team-id YOUR_TEAM_ID \
--apple-key '/path/to/AuthKey_XXXXX.p8' \
--apple-key-id YOUR_KEY_ID \
--apple-issuer-id YOUR_ISSUER_ID \
--certificate '/path/to/certificate.p12' \
--ios-provisioning-profile "com.example.app=./app_profile.mobileprovision" \
--ios-provisioning-profile "com.example.app.share-extension=./share_ext_profile.mobileprovision"

Setiap --ios-provisioning-profile flag mewakili ID bundle ke profil pengaturan file-nya. Profil pengaturan CLI:

  1. Membaca setiap file mobileprovision
  2. Mengextract profil secara otomatis dari plist yang diintegrasikan
  3. Meng-encode file dalam format Base64
  4. Menyimpan semua sebagai satu CAPGO_IOS_PROVISIONING_MAP kredensial

Migrasi dari Profil tunggal

Migrasi dari Profil Tunggal

Jika Anda sebelumnya menggunakan BUILD_PROVISION_PROFILE_BASE64 (profil tunggal), jalankan:

Tampilan Jendela Terminal
bunx @capgo/cli@latest build credentials migrate --platform ios

Ini mengubah kredit Anda yang ada di profil tunggal ke format baru dan menghapus kunci warisan ( CAPGO_IOS_PROVISIONING_MAP Sesudah migrasi, tambahkan profil ekstensi dengan perintah (penambahan merge):BUILD_PROVISION_PROFILE_BASE64, APPLE_PROFILE_NAME).

Tampilan Jendela Terminal update Salin ke clipboard

Tips
bunx @capgo/cli@latest build credentials update \
--platform ios \
--ios-provisioning-profile "com.example.app.share-extension=./share_ext_profile.mobileprovision"

Bagian berjudul “Pengaturan Masalah”

Seringkali, Anda mungkin melihat pesan kesalahan berikut:

Salin ke clipboard

__CAPGO_KEEP_0__

__CAPGO_KEEP_1__

Provisioning profile "YOUR_PROVISIONING_PROFILE_NAME" doesn't include the XYZ capability. (in target 'App' from project 'App')"

Hal ini terjadi karena Anda telah mengaktifkan kemampuan baru setelah profil pengembang telah dibuat. Profil pengembang lama belum termasuk kemampuan baru tersebut.

Untuk memperbaiki masalah ini, Anda perlu menghasilkan ulang profil pengembang.

  1. Buka Portal Pengembang Apple
  2. Pilih tim yang benar di dropdown Pemilihan tim kunci pengembang Apple
  3. Klik pada Profiles Tombol Tombol Profil Pengembang Apple
  4. Cari profil pengembang yang ingin Anda hasilkan ulang Portal Pengembang Apple cari profil
  5. Klik pada Edit button Ubah Profil Pengembang Apple
  6. Klik pada tombol Save button Simpan Profil Pengembang Apple
  7. Klik pada tombol Download button Unduh Profil Pengembang Apple
  8. Jalankan ulang perintah pengaturan Native Build Capgo setup dengan profil yang baru saja diunduh. Masalah ini seharusnya teratasi.

Masalah lainnya

Jika untuk alasan apa pun Anda mengalami masalah baik dengan Capgo Pembangunan Nativ, mengonfigurasi kredit atau membangun aplikasi, silakan tidak ragu-ragu untuk menghubungi kami melalui support.

Jika Anda menggunakan Pembangunan iOS untuk merencanakan otomatisasi CI/CD, hubungkan dengan Capgo CI/CD untuk alur kerja produk di Capgo CI/CD, Capgo Pembangunan Nativ untuk alur kerja produk di Capgo Pembangunan Nativ Integrasi Capgo untuk alur kerja produk di Integrasi Capgo Integrasi CI/CD untuk detail implementasi di Integrasi CI/CD Integrasi Aksi GitHub untuk detail implementasi di Integrasi Aksi GitHub