Zum Inhalt springen

iOS-Builds

Erstellen und bei TestFlight und dem App Store hochladen Sie iOS-Apps mit Capgo’s dediziertem Mac-Infrastruktur.

  • Sie werden erfahren, wie Sie Ihre App über Capgo Native build hochladen
  • Sie werden lernen, wie Sie die Zertifikate für Capgo Native Build konfigurieren können
  • Ein Capgo-Konto (ein kostenloses Probeabo reicht aus, um loszulegen)
  • Ihr App bereits in Capgo registriert (laufen Sie bunx @capgo/cli@latest app add wenn nicht)
  • Ein Mac-Computer mit Xcode installiert (es ist möglich, die Build-Einstellung auf einem Linux/Windows-Maschine vorzunehmen, aber es ist noch nicht dokumentiert)
  • Ein gültiges Apple-Entwicklerkonto (99 $/Jahr) (Sie müssen auf dem Apple-Entwicklerkonto Admin- oder Eigentümerrechte haben)
  • Ihre App muss erfolgreich über Xcode gebaut werden können
  • Eine Capacitor-App
  • Eine für die App konfigurierte Icon. Apps ohne ein Icon können nicht auf dem App Store hochgeladen werden.

Bevor Sie mit der Einrichtung in Apples Portalen beginnen:

Abschnitt: "Bevor Sie mit der Einrichtung in Apples Portalen beginnen"

Stellen Sie sicher, dass das Apple-Konto und die Team-Übersicht vor der Einrichtung von Zertifikaten oder dem ersten Testflug-Upload bereit sind:

  • Aktivieren Sie die Zwei-Faktor-Authentifizierung für das Apple-Konto, das für die Registrierung verwendet wird:
  • Wählen Sie die richtige Mitgliedschaftsart:
    • Einzelunternehmen / Einzelunternehmer: Ihr rechtlicher Name wird zum Verkäufernamen im App Store
    • Organisation: erfordert eine juristische Person, eine D-U-N-S-Nummer, eine öffentliche Unternehmenswebsite, eine E-Mail-Adresse auf dem Unternehmensdomän und eine Person mit der Befugnis, die Organisation zu Apples Vereinbarungen zu binden
  • Verwenden Sie ein Konto, das Zugriff auf beide Apple Developer und App Store Connect für Zertifikate, App-Records, API-Schlüssel und TestFlight hat
  • Buchen Sie Ihren finalen Bundle-Id frühzeitig. Ändern Sie ihn später, bedeutet es normalerweise, die App Store-Einrichtung neu zu konfigurieren
  • Planen Sie diese App Store Connect-Elemente vor der App-Überprüfung: Unterstützungs-URL, Datenschutzrichtlinien-URL, Altersfreigabe, Screenshot, Export-Kompliance und App-Überprüfung-Kontaktinformationen
Beginnen Sie die Apple-Entwickler-Registrierung Fortsetzen Sie die Apple-Registrierung im Web Wählen Sie die richtige Apple-Entwickler-Entitätstyp App Store Connect nach der Registrierung

Bevor wir mit dem Aufbau der App mit Capgo beginnen können, sollten wir sie zuerst einrichten und einen ersten TestFlight-Build manuell durchführen. Es gibt einige Vorteile daran, einen manuellen Build zuerst durchzuführen:

  • Sie werden die Verteilungs-Zertifizierung auf Ihrem lokalen Computer einrichten
  • Sie werden die App Store-Eintrag erstellen, wenn Sie es noch nicht getan haben
  • Sie werden in der Lage sein, Probleme mit dem Build-Prozess zu erkennen, die mit Ihrer App code verbunden sind

Bevor wir beginnen können, müssen Sie die Verteilungs-Zertifizierung auf Ihrem lokalen Computer installiert haben. Das ist ziemlich komplex, aber ich werde es unten erklären.

  1. Öffnen Sie Xcode

  2. Klicken Sie auf Xcode -> Settings... Alternativ können Sie den Kurzbefehl verwenden Cmd + ,

    Xcode-Einstellungen

  3. Zum Accounts Xcode-Konto-Tab

  4. Finden Sie das Apple-Konto, das der Apple-Entwicklerkonto hinzugefügt wurde Xcode ausgewähltes Apple-Konto

  5. Finden Sie das Team, das Sie zum Bereitstellen der App verwenden werden Xcode Team finden

  6. Klicken Sie auf den Manage Certificates... Button Xcode-Zertifikate verwalten

  7. Stellen Sie sicher, dass Sie das Verteilungszertifikat in der Liste sehen können Xcode-Verteilungs-Zertifikat

  8. Wenn Sie nicht tun, müssen Sie ein neues Zertifikat erstellen

    1. Klicken Sie auf den + Schaltfläche und dann auf Apple Distribution Xcode-Zertifikat hinzufügen
    2. Das Zertifikat wird automatisch erstellt. Sie können es in der Liste sehen. Schauen Sie sich den vorherigen Schritt an, um zu bestätigen, dass Sie es sehen.

Da Sie nun das Verteilungs-Zertifikat installiert haben, können Sie den Build-Prozess beginnen.

  1. Öffnen Sie die App in Xcode

    Ausführen bunx cap open ios Um die App in Xcode zu öffnen.

  2. Finden und auf den archive __CAPGO_KEEP_0__

    In der Xcode-Leitfaden, finden und auf den product -> archive __CAPGO_KEEP_0__

    Xcode-Leitfaden

  3. Warten, bis die Veröffentlichung abgeschlossen ist

  4. Klicken Sie auf den Distribute App __CAPGO_KEEP_0__

    Xcode-Verteilstaste

  5. Wählen Sie TestFlight Internal Only als Verteilungsmethode aus und klicken Sie auf Distribute Schaltfläche

    Xcode TestFlight - nur interne Verteilungsmethode

  6. Konfigurieren Sie das App-Verzeichnis

    Füllen Sie die folgenden Felder aus:

    1. Name: Der Name Ihrer App - sichtbar im App Store
    2. SKU - der SKU Ihrer App - dieser wird verwendet, um Ihre App im App Store zu identifizieren
    3. Hauptsprache - die Hauptsprache Ihrer App

    Klicken Sie dann auf die next Schaltfläche

    Xcode TestFlight - App-Verzeichnis konfigurieren

  7. If die Erstellung des App-Records fehlschlägt, versuchen Sie, das Fenster zu schließen und das Archivieren der App erneut zu versuchen.

  8. Warten Sie, bis der Upload abgeschlossen ist

  9. Wenn alles gut ging, sollten Sie die folgende Seite sehen Xcode TestFlight-Upload abgeschlossen

  10. Klicken Sie auf den Done Button

Sie denken vielleicht instinktiv, dass alles in Ordnung ist und dass Sie Ihre App in TestFlight jetzt sehen können, aber es gibt noch ein paar Dinge, die noch abgeschlossen werden müssen:

  1. Setzen Sie sich in TestFlight ein
  2. Abschließen Sie die Exportkonzession, damit die Veröffentlichung testbar wird
  3. Füllen Sie die erforderlichen App Store Connect-Metadaten wie Ihre Support-URL, Ihre Datenschutzrichtlinien-URL und Ihre Altersangabe aus
  4. Vorbereiten Sie Screenshots, die den von Ihnen unterstützten Geräten entsprechen
  5. Fügen Sie die App-Bewertungs-Kontaktinformationen und alle Testanmeldeinformationen vor der Produktionsabgabe hinzu

Lassen Sie es mit dem ersten beginnen:

  1. Gehe zur App Store Connect-Seite App Store Connect-Anmeldeseite Mit deinem Apple-Entwicklerkonto anmelden

  2. Wähle das Team aus, das du verwendet hast, als du das App-Record erstellt hast. Wenn du nur in einem Entwicklerkonto bist, kannst du diesen Schritt überspringen.

  3. App Store Connect-Teamauswahl Klicke auf den

  4. Button Apps Schritt App Store Connect apps Schaltfläche

  5. Finden Sie die im vorherigen Schritt erstellte App und klicken Sie darauf App Store Connect Appauswahl

  6. Klicken Sie auf die TestFlight Schaltfläche App Store Connect Testflug Schaltfläche

  7. Klicken Sie auf die Internal Testers plus Schaltfläche App Store Connect interne Tester plus Schaltfläche

  8. Erstellen Sie eine neue Gruppe

    Ich bevorzuge es, der Gruppe den Namen „interne“ zu geben. Sie können ihr einen Namen geben, den Sie möchten.

    App Store Connect neue Gruppe erstellen

  9. Klicken Sie auf Invite testers Schaltfläche App Store Connect Testteilnehmer hinzufügen Schaltfläche

  10. Fügen Sie sich der Gruppe hinzu

    Finden Sie sich in der Liste und wählen Sie das Häkchen neben Ihrem Namen aus. (Sie müssen sich möglicherweise neu einloggen, um sich selbst zu sehen) Dann klicken Sie auf die Add Schaltfläche.

    App Store Connect Testteilnehmer-Häkchen

  11. Überprüfen Sie, ob Sie der Gruppe beigetreten sind

    Jetzt sollten Sie sich selbst in der Gruppe sehen.

    App Store Connect Testteilnehmer bestätigen

Glückwunsch 🎉 Sie haben sich selbst in TestFlight hinzugefügt. Jetzt gibt es noch ein letztes Ding, das Sie tun müssen, bevor Sie Capgo Native Build konfigurieren können.

Sie müssen nun Apple versprechen, dass Ihre App keine nicht standardmäßige (wie ein benutzerdefinierter Algorithmus) Verschlüsselung verwendet. Wenn Ihre App jedoch nicht standardmäßige Verschlüsselung verwendet, empfehle ich Ihnen, die Dokumentation von Apple zu lesen, um dies zu handhaben.

  1. Es gibt zwei Möglichkeiten, dies zu tun:
  2. Sie können dies jede Zeit, wenn Sie Ihre App bauen, manuell durchführen. false.

Sie können Ihre plist-Datei konfigurieren, um diese Werte automatisch auf

  1. Lassen Sie uns mit der ersten Option beginnen:

  2. Folgen Sie allen Schritten aus der vorherigen Abschnitt, um die TestFlight-Sektion in App Store Connect zu finden Builds -> iOS Klicken Sie auf

  3. App Store Connect iOS-Builds Manage Finden Sie das Build mit fehlender Compliance-Information und klicken Sie auf

  4. Wählen Sie die Option, die Ihre App am besten beschreibt

    Für mich ist das none, aber es könnte für Sie anders sein. Anschließend klicken Sie auf "Speichern"

    App Store Connect speichert die Compliance-Informationen

  5. Ihre App sollte jetzt sagen ready to test

    App Store Connect ist bereit zum Testen

Was die zweite Option betrifft, hier sind die Schritte:

  1. Öffnen Sie das Info.plist Datei

  2. Fügen Sie die folgende Schlüssel hinzu:

    <key>ITSAppUsesNonExemptEncryption</key>
    <false/>
  3. Speichern Sie die Datei

Installieren Sie die TestFlight-App und akzeptieren Sie die Einladung

Abschnitt mit dem Titel “Installieren Sie die TestFlight-App und akzeptieren Sie die Einladung”

Jetzt bist du Fast bereit, deine App in TestFlight zu testen. Bevor du das tust, musst du noch folgende Dinge tun:

  1. Laden Sie die TestFlight-App aus dem App Store auf Ihrem iOS/iPadOS-Gerät herunter
  2. Die Einladung zum Testen Ihrer App akzeptieren

Ich werde die Einzelheiten darüber, wie Sie die TestFlight-App auf Ihrem Gerät installieren, nicht beschreiben. Wenn Sie sich nicht sicher sind, wie Sie eine App installieren, hat Google einige großartige Anleitungen dazu.

Was die Annahme der Einladung betrifft, erhalten Sie eine E-Mail von Apple mit einem Link, um die Einladung anzunehmen.

  1. Öffnen Sie die E-Mail von Apple mit dem Link, um die Einladung anzunehmen

  2. Klicken Sie auf View in TestFlight TestFlight-Einladungs-Button Klicken Sie auf den

  3. TestFlight-Installations-Button Install Die App auf Ihrem Gerät installieren Wenn Sie die App zuvor mit Xcode installiert haben, sehen Sie möglicherweise die folgende Seite. Bitte klicken Sie auf

  4. Wenn Sie die App zuvor mit Xcode installiert haben, sehen Sie möglicherweise die folgende Seite. Bitte klicken Sie auf den

    Installieren Sie die App auf Ihrem Gerät install button. TestFlight-App installieren

  5. Warten Sie, bis die App installiert ist

  6. Klicken Sie auf den Open Button und klicken Sie darauf

Herzlichen Glückwunsch 🎉 Sie haben die Einladung zur Testung Ihrer App in TestFlight angenommen. Jetzt können Sie Capgo Native Build konfigurieren, um Ihre App zu bauen und bei TestFlight zu submiten.

Es gibt ein paar Dinge, die Sie in Capgo Native Build konfigurieren müssen, um Ihre App bauen und bei TestFlight submiten zu können. Hier ist eine Liste der Dinge, die Sie an den Capgo CLI übergeben werden:

ParameterBeschreibung
--platformDie Plattform, für die Sie bauen (ios)
--apple-team-idIhre Apple-Entwickler-Team-ID (im Apple-Entwickler-Portal)
--apple-keyPfad zu Ihrem App Store Connect API-Schlüsseldatei (.p8 Datei)
--apple-key-idDie Schlüssel-ID Ihrer App Store Connect API-Schlüsseldatei
--apple-issuer-idIhre App Store Connect Aussteller-ID
--certificatePfad zu Ihrer Verteilungszertifikat (.p12 Datei)
--ios-provisioning-profileZuordnung von Provisioning-Profilen (bundleId=path oder einfach Pfad für ein einzelnes Profil)

Beispiel-Befehl:

Terminal-Fenster
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'

Lassen Sie uns mit der Team-ID beginnen. Sie ist leicht zu finden.

  1. Zu Apple-Entwicklerkonto und scrollen Sie nach unten

  2. Finden Sie die Team ID

    Team-ID-Stelle im Entwicklerkonto

Jetzt gehen wir zum Apple-Schlüssel über

  1. Gehe zu App Store Connect-Benutzer- und Zugriffsbereich

  2. Wählen Sie das richtige Team aus dem Dropdown-Menü

    1. Klicken Sie auf Ihren Namen in der oberen rechten Ecke
    2. Klicken Sie auf die Mannschaft, die Sie verwenden möchten Apple-Entwickler-Schlüssel-Mannschafts-Auswahl
  3. Klicken Sie auf den Integrations Schaltfläche App Store Connect-Integrationsschaltfläche

  4. Finden Sie den issuer

    Klicken Sie auf den copy Button, um den Aussteller zu kopieren App Store Connect-Aussteller kopieren

  5. Klicken Sie auf den Plus-Button App Store Connect-Schlüssel hinzufügen

  6. Legen Sie den Namen des Schlüssels fest und legen Sie den Zugriff auf App manager und klicken Sie auf den Generate Button App Store Connect-Schlüssel hinzufügen, Namen festlegen, Zugriff auf App-Manager und generieren

  7. Schlüssel-ID speichern

    App Store Connect Kopfzeilen-ID

  8. Laden Sie die Schlüssel herunter

    App Store Connect Download-Schlüssel

    Warnung zum App Store Connect Download-Schlüssel

Glückwunsch 🎉 Sie haben den Apple-Schlüssel, den Apple-Key-ID und die Apple-Issuer-ID erstellt.

Jetzt sind Sie bereit, das Zertifikat auszuführen. Wie Sie sich erinnern, war einer der ersten Schritte dieser Anleitung die Einrichtung des Verteilungszertifikats.

Allerdings haben sich die Apple in ihrer unendlichen Weisheit entschieden, dass die Art und Weise, wie Sie das Zertifikat exportieren, sich erheblich von der Art und Weise unterscheidet, wie Sie sie erstellen.

  1. Öffnen Sie Keychain Access

    1. Klicken Sie Command + Space um den Suchbalken zu öffnen
    2. Suchen Sie nach Keychain Access
    3. Klicken Sie auf den Keychain Access __CAPGO_KEEP_0__
  2. Wählen Sie die login __CAPGO_KEEP_0__ My Certificates Kategorie und klicken Sie auf den Kategorie für die Anmeldung bei Keychain Access

  3. Finden Sie Ihr Zertifikat in der Liste

    Das Zertifikat sollte den Namen Apple Distribution: [Your Name/Company] (your team ID) Zertifikat finden in Keychain Access

  4. Rechtsklicken Sie auf das Zertifikat und wählen Sie Export Zertifikat exportieren in Keychain Access

  5. Speichern Sie das Zertifikat als .p12 __CAPGO_KEEP_0__

    1. Stellen Sie sicher, dass Sie für das Zertifikat-Datei einen guten Namen auswählen
    2. Stellen Sie sicher, dass das Dateiformat auf Personal Information Exchange (.p12)
    3. Klicken Sie auf den Save Schaltfläche

    Keychain Access Zertifikatspeicherdialog

  6. Wenn Sie nach dem Passwort gefragt werden, können Sie entweder:

    • Das Passwort überspringen (empfohlen für Einfachheit): Klicken Sie OK ohne Passwort einzugeben
    • Ein Passwort setzen: Wenn Sie vorziehen, Ihr Zertifikat mit einem Passwort zu schützen, können Sie eines hier einstellen. Passwortgeschützte .p12 Dateien werden vollständig von der Capgo CLI unterstützt – geben Sie einfach das Passwort mit der --p12-password Option an, wenn Sie die Konfigurationskommando ausführen.

    Keychain Access Zertifikatspeicherung Passwortdialog

  7. Wenn Sie nach dem „Anmelde-Schlüsselkasten-Passwort“ gefragt werden, geben Sie das Passwort ein, das Sie zum Anmelden an Ihrem Mac verwenden.

    Geben Sie das Passwort ein, das Sie zum Anmelden an Ihrem Mac verwenden. Dann klicken Sie auf den Allow Button.

    Keychain Access Zertifikatspeicherung Anmelde-Schlüsselkasten-Passwort

Glückwunsch 🎉 Sie haben das Zertifikat exportiert.

Jetzt bist du bereit, das Zertifikatsprofil auszugeben. Ich verspreche dir, das ist das letzte, was du von Apple benötigst.

  1. Gehe zu Apple-Entwickler-Profil

  2. Wähle das richtige Team aus dem Dropdown-Menü

    1. Klicke auf deinen Namen in der oberen rechten Ecke
    2. Klicke auf das Team, das du verwenden möchtest Apple-Entwickler-Schlüssel-Teamauswahl
  3. Stelle sicher, dass du auf der richtigen Seite bist Es sollte so aussehen, wenn es nicht so aussieht, klicke auf profiles in der Seitenleiste

    Apple-Entwickler-Profil-Seite

  4. Klicken Sie auf den + __CAPGO_KEEP_0__ Apple Developer-Profil hinzufügen

  5. Wählen Sie den Profiltyp Wählen Sie App Store Connect und klicken Sie auf den Continue __CAPGO_KEEP_0__

    Apple Developer-Profiltyp wählen

  6. Wählen Sie das App-Entwicklungsprojekt

    Finden Sie Ihre App im Dropdown-Menü und klicken Sie auf den Continue __CAPGO_KEEP_0__

    Apple Developer-App wählen

  7. Wählen Sie das richtige Verteilungs-Zertifikat

    Wählen Sie das Zertifikat, das Sie im vorherigen Schritt exportiert haben, und klicken Sie auf den Continue Button

    Apple Developer Zertifikat für die Verteilung auswählen

    Wenn Sie unsicher sind, welches Zertifikat auswählen sollen, kommen Sie zurück zu Keychain Access und finden Sie das Zertifikat, das Sie exportiert haben. Dann sehen Sie sich die Ablaufzeit an.

    Apple Developer Zertifikat für die Verteilung auswählen Ablaufzeit

  8. Benennen Sie das Profil

    Geben Sie dem Profil einen Namen und klicken Sie auf den Generate Tip

    Apple Developer

  9. Das Profil herunterladen

    Klicken Sie auf den Download Button zum Herunterladen des Profils

    Apple-Entwickler-Download-Profil

Glückwunsch 🎉 Sie haben jetzt alles, was Sie benötigen, um Capgo Native Build zu konfigurieren.

Gut gemacht! Ihr habt jetzt alles, was ihr zum Konfigurieren von Capgo Native Build benötigt.

Der Befehl, den ihr ausführen müsst ist:

Terminalfenster
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

Wenn alles gut gelaufen ist, sehen Sie folgende Ausgabe:

Capgo CLI Anmeldeinformationen speichern

Wenn Sie bereits die Schritte zum Zeitserver synchronisieren Team-ID, Apple-Schlüssel, Apple-Schlüssel-ID und Apple-Issuer-ID, Zertifikat, und Provisionierungsprofil, you already have everything needed for CI/CD. This section only covers how to pass those values as GitHub Actions secrets and environment variables.

Terminalfenster
# 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

In GitHub > Repository > Settings > Secrets and variables > Actions, hinzufügen:

Geheimer NameWert
CAPGO_TOKENIhr Capgo API Token
APP_STORE_CONNECT_TEAM_IDTeam-ID von Team-ID
APPLE_KEY_IDSchlüssel-ID von Apple-Schlüssel, Apple-Schlüssel-ID und Apple-Aussteller-ID
APPLE_ISSUER_IDAussteller-ID von Apple-Schlüssel, Apple-Schlüssel-ID und Apple-Aussteller-ID
BUILD_CERTIFICATE_BASE64Inhalt von certificate_base64.txt
CAPGO_IOS_PROVISIONING_MAPErstellt von CLI — kopieren Sie aus .capgo-credentials Datei
APPLE_KEY_CONTENTInhalt von apple_key_base64.txt
P12_PASSWORD (optional)Ihr .p12 Passwort, wenn während der Export gesetzt

3) Verwenden Sie Umgebungsvariablen in Ihrem GitHub Actions Workflow

Abschnitt mit dem Titel „3) Verwenden Sie Umgebungsvariablen in Ihrem GitHub Actions Workflow“
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 }}

Jetzt bist du bereit, deine erste Erstellung auszuführen.

Führe den folgenden Befehl aus, um deine App zu erstellen:

Terminal-Fenster
bunx @capgo/cli@latest build request --platform ios

Herzlichen Glückwunsch 🎉 Du hast deine App erfolgreich erstellt und sie ist bereit, zur App Store-Überprüfung eingereicht zu werden.

Der normale App Store-Build-Weg lädt die Erstellung in App Store Connect/TestFlight hoch. Wenn deine CI-Ausgabe auch die bearbeitete TestFlight-Erstellung zur App Store-Version anhängen und zur App-Überprüfung einreichen soll, übergebe --submit-to-store-review mit einer Release-Erstellung:

Terminal-Fenster
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

Dies erfordert App Store Connect API-Sicherheitszertifikate (APPLE_KEY_ID, APPLE_ISSUER_ID, APPLE_KEY_CONTENT, und APP_STORE_CONNECT_TEAM_ID). App-spezifische Passwörter und ad_hoc Verteilung können keine Build-Review-Submission erstellen. --store-release-name ist die App-Store-Version; wenn diese weggelassen wird, Capgo liest MARKETING_VERSION aus dem Xcode-Projekt. --store-release-notes ist die Ausfallsicherung für App-Store-Neuigkeiten und jeder --store-release-notes-locale "locale=notes" Eintrag kann es für eine Store-Lokalisierung überschreiben. Verwenden --ios-automatic-release um automatisch nach Apple-Zustimmung freizugeben, oder --no-ios-automatic-release um auf eine manuelle Freigabe zu warten. --ios-testflight-groups ist weiterhin für externe Beta-Verteilung verfügbar, aber es ist nicht erforderlich für die App-Store-Review-Submission.

Standardmäßig erstellt Capgo iOS-Anwendungen für die Verteilung im App Store (TestFlight + App Store). Wenn Sie stattdessen ad-hoc-gebaute Anwendungen benötigen (z.B. für interne Tests oder die Sammlung von CI-Artefakten), können Sie den --ios-distribution Flagge verwenden.

  • Sie möchten IPAs direkt an registrierte Geräte verteilen (kein TestFlight)
  • Sie haben keinen oder möchten keinen App Store Connect API-Schlüssel verwenden
  • Sie möchten Build-Artikel über --output-upload ohne bei der App Store zu submiten

Ad-hoc-Builds haben weniger Anforderungen als App Store-Builds:

ZertifikatErforderlich?
Verteilungszertifikat (.p12)Ja
Ad-hoc-Provisionierungsprofil (.mobileprovision)Ja
Team-ID (--apple-team-id)Ja
App Store Connect API-Schlüssel (.p8)Nein
Apple Key ID / Issuer IDNein

Folgen Sie den gleichen Schritten wie Beitrittsprofil, aber in Schritt 5 wählen Sie Ad hoc anstatt App Store:

  1. Zu Apple-Entwicklerprofile
  2. Klicken Sie auf den + Schaltfläche
  3. Wählen Sie Ad hoc und klicken Sie auf Weiter
  4. Wählen Sie Ihre App und Zertifikat für die Verteilung
  5. Wählen Sie die Geräte, die Sie registrieren möchten
  6. Name und herunterladen Sie das Profil
Terminalfenster
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'

Nein --apple-key, --apple-key-id, oder --apple-issuer-id benötigt.

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

Um die IPA als Build-Artifact zu sammeln, fügen Sie --output-upload:

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

Für GitHub Actions benötigen Sie weniger Geheimnisse als App Store-Builds:

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

Apps mit Erweiterungen (Multi-Target-Signing)

Abschnitt: "Apps mit Erweiterungen (Multi-Target-Signing)"

Wenn Ihre App Erweiterungen (z.B. Teilen-Erweiterungen, Widgets, Benachrichtigungs-Service-Erweiterungen usw.) enthält, benötigt jede Erweiterung ihr eigenes Provisioning-Profil. Capgo unterstützt dies über die wiederholbare --ios-provisioning-profile Flag.

Beispiel: App + Teilen-Erweiterung

Abschnitt: "Beispiel: App + Teilen-Erweiterung"
Terminal-Fenster
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"

Jede --ios-provisioning-profile Flag stellt eine Bundle-ID auf ihr Provisioning-Profil-Datei zu. Der CLI:

  1. Liest jede mobileprovision-Datei
  2. Automatisch extrahiert den Profilnamen aus der eingebetteten plist
  3. Base64-codiert das Datei
  4. Speichert alles als ein CAPGO_IOS_PROVISIONING_MAP Kreditkarten-Daten

Wenn Sie zuvor BUILD_PROVISION_PROFILE_BASE64 (Single Profile) verwendet haben, führen Sie bitte:

Terminalfenster
bunx @capgo/cli@latest build credentials migrate --platform ios

Dies wandelt Ihre bestehenden Ein-Profil-Zugangsdaten in das neue Format um und entfernt die alten Schlüssel ( CAPGO_IOS_PROVISIONING_MAP Nach der Migration fügen Sie Erweiterungsprofile mit demBUILD_PROVISION_PROFILE_BASE64, APPLE_PROFILE_NAME).

Befehl (additiver Merge) hinzu: update Terminalfenster

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

Manchmal sehen Sie den folgenden Fehler:

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

Dies tritt auf, weil Sie eine neue Fähigkeit aktiviert haben, nachdem das Provisionierungsprofil erstellt wurde. Das alte Provisionierungsprofil enthält die neue Fähigkeit noch nicht.

Um dies zu beheben, müssen Sie das Provisionierungsprofil neu erstellen.

  1. Öffnen Apple-Entwicklerportal
  2. Wählen Sie die richtige Mannschaft im Dropdown-Menü aus Apple-Entwickler-Schlüssel-Mannschafts-Auswahl
  3. Klicken Sie auf den Profiles Knopf Apple-Entwickler-Profil-Knopf
  4. Finden Sie das Provisioning-Profil, das Sie wiederherstellen möchten Apple-Entwickler-Profil finden
  5. Klicken Sie auf den Edit Knopf Apple-Entwickler-Profil bearbeiten
  6. Klicken Sie auf den Save Knopf Apple-Entwickler-Profil speichern
  7. Klicken Sie auf den Download Button Apple-Entwickler-Profil herunterladen
  8. Führen Sie den Capgo Native Build Setup-Befehl erneut aus mit dem neu heruntergeladenen Profil.

Dies sollte das Problem beheben.

Wenn Sie für irgendeinen Grund Probleme haben, sei es mit Capgo Native Build, der Konfiguration der Anmeldeinformationen oder der App-Build, zögern Sie bitte nicht, uns über unsere Support.

Weitermachen von iOS Builds

Bleibst du an iOS Builds

Wenn du iOS Builds verwendest iOS Builds um die CI/CD-Automatisierung zu planen, verbinde es mit Capgo CI/CD für den Produktworkflow in Capgo CI/CD, Capgo Native Builds für den Produktworkflow in Capgo Native Builds, Capgo Integrations für den Produktworkflow in Capgo Integrations, CI/CD-Integration für die Implementierungsdetails in CI/CD-Integration GitHub Aktionen Integration für die Implementierungsdetails in GitHub Aktionen Integration.