Kanäle
Eine Einrichtungsvorschlag mit den Installationsanweisungen und der vollständigen Markdown-Guideline für diesen Plugin kopieren.
Kanäle sind die zentrale Mechanismatik für die Verwaltung von App-Updates in Capgo. Sie ermöglichen es Ihnen, zu steuern, wie und wann Ihre Benutzer Updates erhalten, wodurch Funktionen wie A/B-Test, rollierende Veröffentlichungen und plattform-spezifische Updates möglich werden.
Kanäle verstehen
Abschnitt mit dem Titel “Kanäle verstehen”Ein Kanal stellt eine Verteilungsstrecke für Ihre App-Updates dar. Jeder Kanal kann mit spezifischen Regeln und Einschränkungen konfiguriert werden:
- Paket (Version) Kontrolle: Bestimmen Sie, welches Paket (Version) die Benutzer erhalten
- Plattformziel: Ziehen Sie bestimmte Plattformen (iOS/Android/Electron) an
- Update-Politik: Steuere, wie Updates geliefert werden
- Gerätebeschränkungen: Verwalte, welche Geräte Zugriff auf Updates haben
Kanal-Konfigurationsoptionen
Abschnitt mit dem Titel “Kanal-Konfigurationsoptionen”- öffentlich: Setze als Standardkanal für neue Geräte
- disableAutoUpdateUnderNative: Verhindere Updates, wenn die Geräte-App-Version neuere ist als die im Kanal verfügbare Update-Paket (Version) (z.B. Gerät ist auf App-Version 1.2.3, aber Kanal hat Update-Paket (Version) 1.2.2)
- disableAutoUpdate: Steuere die Updateverhalten (“major”, “minor”, “version_number”, “none”)
- ios/android/electron: Aktivieren/Sperren für bestimmte Plattformen
- allow_device_self_set: Lassen Sie Geräte ihren Kanal wählen
- allow_emulator: Zulassen von Updates auf Emulatordaten
- allow_dev: Zulassen von Updates auf Entwicklungsbuilds
Best Practices
Abschnitt mit dem Titel “Best Practices”- Testing Channel: Halten Sie einen Testkanal für interne Validierung bereit
- Staged Rollout: Verwenden Sie mehrere Kanäle für die schrittweise Bereitstellung von Updates
- Plattformtrennung: Erstellen Sie separate Kanäle für iOS, Android und Electron, wenn erforderlich
- Bundle (Version) Kontrolle: Verwenden Sie semantische Versionsnummerierung für klare Updatepfade
Endpunkte
Abschnitt mit dem Titel „Endpunkte“https://api.capgo.app/channel/
Konfigurieren oder aktualisieren Sie eine Kanal-Konfiguration.
Anforderungskörper
Abschnitt mit dem Titel „Anforderungskörper“type disable_update = "major" | "minor" | "version_number" | "none"interface ChannelSet { app_id: string channel: string version?: string // bundle (version) name public?: boolean disableAutoUpdateUnderNative?: boolean disableAutoUpdate?: disable_update ios?: boolean android?: boolean electron?: boolean allow_device_self_set?: boolean allow_emulator?: boolean allow_dev?: boolean}Beispielanfrage
Abschnitt mit dem Titel „Beispielanfrage“curl -X POST \ -H "authorization: your-api-key" \ -H "Content-Type: application/json" \ -d '{ "app_id": "app_123", "channel": "beta", "version": "1.2.0", "public": false, "disableAutoUpdate": "minor", "ios": true, "android": true, "electron": true, "allow_emulator": true }' \ https://api.capgo.app/channel/Erfolgsantwort
Abschnitt mit dem Titel „Erfolgsantwort“{ "status": "ok"}https://api.capgo.app/channel/
Kanalinformationen abrufen. Gibt 50 Kanäle pro Seite zurück.
Abfrageparameter
Abschnitt mit dem Titel „Abfrageparameter“app_id: Pflichtfeld. Die ID Ihrer Apppage: Optional. Seitennummer für die Paginierungchannel: Optional. Spezifischer Kanalname zum Abrufen
Beispielanfragen
Abschnitt mit dem Titel „Beispielanfragen“# Get all channelscurl -H "authorization: your-api-key" \ "https://api.capgo.app/channel/?app_id=app_123"
# Get specific channelcurl -H "authorization: your-api-key" \ "https://api.capgo.app/channel/?app_id=app_123&channel=beta"
# Get next pagecurl -H "authorization: your-api-key" \ "https://api.capgo.app/channel/?app_id=app_123&page=1"Antworttyp
Abschnitt mit dem Titel „Antworttyp“interface Channel { id: number; created_at: string; name: string; app_id: string; version: { // bundle (version) assigned to the channel id: number, name: string }; created_by: string; updated_at: string; public: boolean; disableAutoUpdateUnderNative: boolean; disableAutoUpdate: boolean; allow_emulator: boolean; allow_dev: boolean;}In der Antwort unten ist version bezieht sich auf das Bundle (Version), das dem Kanal zugewiesen ist.
Beispielantwort
Abschnitt mit dem Titel „Beispielantwort“{ "data": [ { "id": 1, "name": "production", "app_id": "app_123", "version": { "id": 1, "name": "1.0.0" }, "created_at": "2024-01-01T00:00:00Z", "updated_at": "2024-01-01T00:00:00Z", "created_by": "user_123", "public": true, "disableAutoUpdateUnderNative": false, "disableAutoUpdate": false, "allow_emulator": false, "allow_dev": false } ]}https://api.capgo.app/channel/
Ein Kanal löschen. Beachten Sie, dass dies alle Geräte, die diesen Kanal verwenden, beeinflusst.
Abfrageparameter
Abschnitt mit dem Titel „Abfrageparameter“interface Channel { channel: string app_id: string}Beispielanfrage
Abschnitt mit dem Titel „Beispielanfrage”curl -X DELETE \ -H "authorization: your-api-key" \ -H "Content-Type: application/json" \ -d '{ "app_id": "app_123", "channel": "beta" }' \ https://api.capgo.app/channel/Erfolgreiche Antwort
Abschnitt mit dem Titel „Erfolgreiche Antwort”{ "status": "ok"}Fehlerbehandlung
Abschnitt mit dem Titel „Fehlerbehandlung”Gemeinsame Fehlerfälle und ihre Antworten:
// Channel not found{ "error": "Channel not found", "status": "KO"}
// Invalid bundle (version) format{ "error": "Invalid version format. Use semantic versioning", "status": "KO"}
// Invalid update policy{ "error": "Invalid disableAutoUpdate value", "status": "KO"}
// Permission denied{ "error": "Insufficient permissions to manage channels", "status": "KO"}Gemeinsame Verwendungsfälle
Section titled “Gängige Verwendungsfälle”- Beta-Testung
{ "app_id": "app_123", "channel": "beta", "version": "1.2.0-beta", "public": false, "allow_emulator": true, "allow_dev": true}- Produktionsstart
{ "app_id": "app_123", "channel": "production", "version": "1.2.0", "public": true, "disableAutoUpdate": "minor"}- Plattformspezifische Updates
{ "app_id": "app_123", "channel": "ios-hotfix", "version": "1.2.1", "ios": true, "android": false}Weitermachen von Kanälen
Section titled “Weitermachen von Kanälen”Wenn Sie Kanäle zur Planung der Kanalroutings und der schrittweisen Veröffentlichung verwenden, verbinden Sie sie mit Kanäle für die Implementierungsdetails in Kanäle, Kanäle für die Implementierungsdetails in Kanäle, Beta-Testlösung für den Produktworkflow in Beta-Testlösung, Versionsziel-Lösung für den Produktworkflow in Versionsziel-Lösung, und Capgo Umgebungsbest Practices: Staging mit einem mobilen App-ID für den praktischen Kontext in Capgo Umgebungsbest Practices: Staging mit einem mobilen App-ID.