Canali
Copia un prompt di configurazione con i passaggi di installazione e la guida markdown completa per questo plugin.
I canali sono il meccanismo di base per la gestione degli aggiornamenti dell'applicazione Capgo. Consentono di controllare come e quando i tuoi utenti ricevono gli aggiornamenti, abilitando funzionalità come il testing A/B, gli aggiornamenti in fase di testing e gli aggiornamenti specifici per piattaforma.
Capire i canali
Sottosezione intitolata “Capire i canali”Un canale rappresenta un percorso di distribuzione per gli aggiornamenti dell'applicazione. Ogni canale può essere configurato con regole e vincoli specifici:
- Controllo del pacchetto (versione): Specifica quale pacchetto (versione) gli utenti ricevono
- Targetting della piattaforma: Scegliere piattaforme specifiche (iOS/Android/Electron)
- Politiche degli aggiornamenti: Controllare come gli aggiornamenti sono consegnati
- Restrizioni dispositivi: Gestisci quali dispositivi possono accedere agli aggiornamenti
Opzioni di configurazione del canale
Sottosezione intitolata “Opzioni di configurazione del canale”- pubblico: Imposta come canale predefinito per i nuovi dispositivi
- disableAutoUpdateUnderNative: Impedisce gli aggiornamenti quando la versione nativa dell'applicazione sul dispositivo è più recente della versione disponibile nel canale (ad esempio, il dispositivo è in versione nativa 1.2.3, ma il canale ha la versione 1.2.2)
- disableAutoUpdate: Controlla il comportamento degli aggiornamenti (“maggiore”, “minore”, “numero di versione”, “nessuno”)
- ios/android/electron: Abilita/disabilita per piattaforme specifiche
- consenti_dispositivo_autoimpostazione: Lascia che i dispositivi scelgano il canale
- consenti_emulatore: Consenti gli aggiornamenti sui dispositivi emulatore
- consenti_dev: Consenti gli aggiornamenti sui build di sviluppo
Pratiche Raccomandate
: Sezione intitolata “Pratiche Raccomandate”- Canale di Test: Mantieni un canale di test per la validazione interna
- Rilascio Stagionale: Utilizza più canali per il rilascio graduale degli aggiornamenti
- Separazione di piattaforma: Crea canali separati per iOS, Android e Electron quando necessario
- Controllo del pacchetto (versione): Utilizza la versioning semantico per percorsi di aggiornamento chiari
Punti di fine
Sottosezione intitolata “Punti di fine”https://api.capgo.app/channel/
Creare o aggiornare una configurazione del canale.
Corpo della richiesta
Sezione intitolata “Corpo della richiesta”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}Esempio di richiesta
Sezione intitolata “Esempio di richiesta”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/Risposta di successo
Sezione intitolata “Risposta di successo”{ "status": "ok"}https://api.capgo.app/channel/
Recupera le informazioni del canale. Restituisce 50 canali per pagina.
Parametri di query
Sezione intitolata “Parametri di query”app_id: Obbligatorio. L'ID del tuo apppage: Facoltativo. Numero di pagina per la paginazionechannel: Facoltativo. Nome del canale specifico da recuperare
Esempi di richiesta
Sezione intitolata “Esempi di richiesta”# 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"Tipo di risposta
Sezione intitolata “Tipo di risposta”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 basso risulta la risposta indicata. version si riferisce al pacchetto (versione) assegnato al canale.
Esempio di Risposta
Sottosezione intitolata “Esempio di Risposta”{ "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/
Cancella un canale. Nota che ciò influenzerà tutti i dispositivi che utilizzano questo canale.
Parametri della Query
Sottosezione intitolata “Parametri della Query”interface Channel { channel: string app_id: string}Esempio di Richiesta
Sezione intitolata “Richiesta di esempio”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/Risposta di successo
Sezione intitolata “Risposta di successo”{ "status": "ok"}Gestione degli errori
Sezione intitolata “Gestione degli errori”Scenari di errore comuni e relative risposte:
// 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"}Utilizzo comune
Sezione intitolata “Utilizzo comune”- Test di Beta
{ "app_id": "app_123", "channel": "beta", "version": "1.2.0-beta", "public": false, "allow_emulator": true, "allow_dev": true}- Esecuzione di rollout in produzione
{ "app_id": "app_123", "channel": "production", "version": "1.2.0", "public": true, "disableAutoUpdate": "minor"}- Aggiornamenti specifici per piattaforma
{ "app_id": "app_123", "channel": "ios-hotfix", "version": "1.2.1", "ios": true, "android": false}Continua da Canali
Sezione intitolata “Continua da Canali”Se stai utilizzando Canali per pianificare la routing dei canali e la rollout a fasi, connettilo con Canali per i dettagli di implementazione in Channels, Channels per i dettagli di implementazione in Channels, Soluzione di Test Beta per il flusso di lavoro del prodotto in Soluzione di Test Beta, Soluzione di Targetizzazione della Versione per il flusso di lavoro del prodotto in Soluzione di Targetizzazione della Versione, e Capgo Pratiche per l'ambiente: Staging con un ID di App Mobile Unico per il contesto pratico in Capgo Pratiche per l'ambiente: Staging con un ID di App Mobile Unico.