Vai al contenuto

Canali

Quando un dispositivo chiede a Capgo di aggiornarsi, il canale che verrà utilizzato viene deciso in questo ordine (priorità più alta per prima):

  1. Mappatura forzata del dispositivo: Se l'ID del dispositivo è esplicitamente impostato su un canale (la Dispositivi tabella sulle pagine dei canali), quel canale vince sempre. Le mappature forzate sono sovrascritte console/API. Capgo le elimina dopo 90 giorni dall'ultima scrittura di sovrascrittura. Vedi Console e sovrascrittura di API scadono.
  2. Cloud override (Pannello di controllo o Pubblico API): Modificare il canale di un dispositivo nel pannello di controllo o tramite il Pubblico API scrive un override legato a quel ID dispositivo. Riinstallando l'app non non lo cancella; cancellando l'override lo si fa. Lo stesso periodo di conservazione di 90 giorni si applica.
  3. Plugin setChannel() (locale): Le versioni correnti dei plugin setChannel() salvano il canale sul dispositivo dopo la validazione del backend. Non è un override del pannello di controllo. Riinstallando l'app lo si cancella; l'app deve richiamarlo setChannel() se ancora si desidera quel canale.
  4. Capacitor config defaultChannel (impostazione di test predefinita): Per le versioni di test interna / beta / puoi impostare defaultChannel (chiave legacy) channelin capacitor.config.* così i dispositivi di test iniziano su un canale di anteprima (ad es. beta, pr-123). Se assente, il dispositivo procederà al cloud default. Le costruzioni di produzione lasciano spesso questo impostato su default.
  5. Canale Cloud Predefinito (strategia principale per ~99% degli utenti): Il canale di produzione principale a cui atterranno quasi tutti gli utenti reali. Qualsiasi nuovo dispositivo senza una forza, senza un sovrapposizione, senza una configurazione locale setChannel()e senza una configurazione defaultChannel utilizza questo. Cambiarlo fa uscire (o torna indietro) per tutti in secondi, senza un nuovo binario.

Perché il canale cloud predefinito è la strada principale:

  • Rollout o rollback istantaneo senza ricostruire o ririlasciare i binari nativi.
  • Un posto per gestire il comportamento di iOS, Android e Electron.
  • Più sicuro: puoi confermare che i pacchetti esistono e le impostazioni sono corrette prima di passare a impostazioni predefinite.
  • Le modifiche auditabili (i membri della squadra possono vedere chi ha modificato cosa nella UI / registri). Principio di progettazione: le layer sopra (forza / sovrascrivi / configurazione) sono eccezioni (debug unico utente, QA switching, build di test predefinito). I normali utenti scorrono verso le impostazioni predefinite cloud.

La modifica del canale cloud affecta nuovi dispositivi normali che:

  • Non sono stati obbligati
  • Non hanno già un sovrascrittura cloud
  • Non avere un'applicazione di livello defaultChannel definito

Se un testo di costruzione parte con defaultChannel: 'beta' e successivamente cambiare il cloud predefinito a productioni dispositivi che sono partiti su beta attraverso la configurazione rimangono lì fino a quando non si applica un'assegnazione di priorità più alta, o fino a quando non si invia un binario senza defaultChannel. Eliminare un forzo, un sovraccarico cloud o locale setChannel() non elimina il valore della configurazione; quel fallback rimane fino al nuovo binario.

I dispositivi rimangono sul loro canale attuale a meno che non facciate:

  • Forzarli su un altro canale (console o Public API).
  • Cambiare il sovraccarico cloud nel dashboard o Public API.
  • Chiamare setChannel() (assegnamento locale sulle versioni correnti del plugin).
  • Elimina / archivia il canale su cui si trovano (poi ricadranno attraverso la precedenza nuovamente alla prossima verifica).
  • Aspetta fino a quando non scade il superamento console/API dopo 90 giorni.
  • Rinstabili l'applicazione, che cancella un assegnamento locale ma non un superamento console/__CAPGO_KEEP_0__. setChannel() assignment but not a console/API override.

Nota: Impostare

significa cambiarlo richiede un nuovo binario; utilizzalo intenzionalmente per test/QA, non per il controllo generale di produzione. defaultChannel Esempio di configurazione __CAPGO_KEEP_0__

Sezione intitolata “Esempio di configurazione Capacitor”

Esempio di configurazione Capacitor.ts
capacitor.config.ts
// Example: a TestFlight or internal QA build defaults to the beta channel.
const config = {
plugins: {
CapacitorUpdater: {
defaultChannel: 'beta', // Test build default. Omit in production so users attach to cloud default.
// legacy key: channel
},
},
};
export default config;

If cambi di nuovo la dashboard predefinita a production, dispositivi già su un altro canale (tramite config, override o forza) NON si sposteranno automaticamente; solo dispositivi freschi (o quelli di cui cancelli l'override/forza) li assumeranno.


Prima di tutto, prendiamo in considerazione la pagina dei canali. Puoi accedervi cliccando sul tuo app e poi cliccando sul pulsante dei canali elenco dei canali.

Crea un canale

__CAPGO_KEEP_0__1 Cliccando su di esso si aprirà una finestra modale dove potrai creare un nuovo canale.

nuovo canale

Poi dopo aver cliccato su Add Dovrebbe apparire un nuovo canale nella lista.

dopo la creazione del canale

A volte la configurazione di un canale non è valida. In quel caso, riceverai un grande avviso e il Misconfigured sarà indicato Yes per uno o più dei canali. Puoi imparare di più su questo qui

Per eliminare un canale dall'app web, apri il Canali context Pulsante per eliminare un canale Pulsante di azione Pulsante di conferma Elimina

Se il pulsante di eliminazione non è visibile, il tuo account non ha le autorizzazioni per quel canale. Chiedi a un amministratore di organizzazione o di app di concedere un ruolo che possa eliminare i canali, o elimina il canale con una chiave __CAPGO_KEEP_0__ che ha le autorizzazioni:

Finestra del terminale channel.delete permission for that app. Ask an organization or app admin to grant a role that can delete channels, or delete the channel with an API key that has permission:

Colonna di azione del canale
npx @capgo/cli@latest channel delete <channel-name> <app-id>

Un'organizzazione e un'app legate Anteprima dell'app La chiave dell'organizzazione e dell'app può cancellare solo l'anteprima non pubblica del canale e del pacchetto creati con essa. Non può modificare o cancellare un canale predefinito principale, un altro canale di anteprima o un pacchetto di un'altra chiave. Vedi channel delete <preview-channel> <app-id> --delete-bundle__CAPGO_KEEP_0__ Chiavi API Keys Gestione di un canale

Impostazioni del canale

Schede del canale
  • Pannello di controllocontext
  • Adozione del bundle corrente e statistiche di installazione per questo canale.: Channel settings listed below, plus progressive rollout and Test Update API.
  • Canali: Forced mappings created from the console or Public API only. It does not list every device currently on the channel, and it does not list devices that used setChannel()Dispositivi Console and API overrides expire.
  • . VediConsole e override del pubblico __CAPGO_KEEP_0__ scadono
  • Storia: Visualizzazione in anteprima in browser e nativa del pacchetto collegato. Abilita anteprima del pacchetto in Informazioni sull'app per prima cosa.

Resta sulla informazione tabella. Le impostazioni appaiono in questo ordine:

Per prima cosa, Canale di download predefinito è un badge di stato, non un toggle. Attivo significa che questo canale è quello cloud predefinito per i dispositivi nuovi. Clicca gestisci le impostazioni dell'app per modificare la predefinito su Informazioni sull'app. Per le impostazioni predefinite specifiche per piattaforma (una per iOS, una per Android e una per Electron), vedi la stessa sezione.

secondo il IOS impostazione. Se questo è falso, i dispositivi iOS non saranno autorizzati a scaricare gli aggiornamenti da questo canale.

terzo è il Android impostazione. Se questo è falso, i dispositivi Android non saranno autorizzati a scaricare gli aggiornamenti da questo canale.

quarto è il Electron impostazione. Se questo è falso, le applicazioni Electron non saranno autorizzate a scaricare gli aggiornamenti da questo canale.

quinto è il Disable auto downgrade under native impostazione. Se è vero, allora sarà impossibile scendere a una versione nativa. Ciò significa che se hai caricato una versione sullo store dell'app o su play store e cerchi di impostare la versione del canale su 1.2.0 allora l'aggiornamento (abbassamento) fallirà. 1.1.0 Sesta è la

impostazione. Questa impostazione è piuttosto complessa, e puoi imparare di più su di essa Disable auto updateSettima è la impostazione. Sceglie se i dispositivi scaricano un file zip completo, una delta dei file modificati o entrambi. Vedi

Pacco di aggiornamento Update package Ottava è la impostazione. Se è vero, i build di sviluppo saranno autorizzati a scaricare gli aggiornamenti da questo canale. Se non lo è, allora qualsiasi richiesta di aggiornamento che ha .

impostato a false verrà rifiutata. Ciò è utile soprattutto per scopi di testing. Allow development build__CAPGO_KEEP_0__ prod __CAPGO_KEEP_1__

Nono è Allow production build. Se questo è falso, le versioni di produzione (di store) non riceveranno aggiornamenti da questo canale. Lascialo attivo per i canali che servono utenti reali.

Decimo è il Allow Emulators. If this is false then Capgo will disallow any update request that comes from an emulator. This is mostly useful for testing purposes.

dismetterà qualsiasi richiesta di aggiornamento che provenga da un emulatore. Questo è utile soprattutto per scopi di testing. Allow physical devices. If this is false then Capgo will reject update requests from real phones and tablets. Leave this on for production channels.

. Se questo è falso, il Allow devices to self dissociate/associaterifiuterà le richieste di aggiornamento da parte di telefoni e tablet reali. Lascialo attivo per i canali di produzione. Dodicesimo è . Se questo è vero, il metodo setChannel sarà disponibile. Se questo è impostato su falso e provi a chiamare il metodo con questo canale, la chiamata fallirà.

In fondo a Informazioni espandi Aggiornamento di prova API. Capgo mostra un comando curl contro /updates per un dispositivo di esempio su questo canale.

I cambiamenti possono richiedere fino a 60 secondi per apparire nel API a causa della cache. Se il canale non può essere testato, il console vi avverte: il canale richiede almeno una piattaforma (iOS o Android), le build di produzione, i dispositivi fisici e o essere il canale di download predefinito o consentire l'assegnazione dei dispositivi da parte dell'utente.

Dopo aver modificato il bundle collegato, il console può chiedere di Invia notifica di aggiornamento. Questo mette in coda una notifica silenziosa, quindi i dispositivi sul canale controllano ora il nuovo pacchetto. Configura le credenziali di push per Android e iOS sulla scheda Notifiche dell'app prima di procedere.

Il mapping forzato e le sovrascritture del canale pubblico API vengono eliminati 90 giorni dopo l'ultima scrittura di sovrascrittura. La data di ultima connessione del dispositivo non riavvia questo orologio. Per un'assegnazione che sopravviva a questa pulizia, impostalo defaultChannel in la tua configurazione Capacitor (resiste alla reinstallazione, richiede un nuovo binario per cambiarlo) o chiama setChannel() dal tuo app (evita la pulizia dei 90 giorni, ma la reinstallazione lo cancella, quindi l'app deve chiamare setChannel() nuovamente).

La scheda dispositivi del canale Capgo mostrando la pop-over di conservazione delle sovrascritture: le sovrascritture della console scadono dopo 90 giorni
La conservazione delle sovrascritture sulla scheda dispositivi del canale. Lo stesso avviso compare quando forzi un ID dispositivo sul canale.

Questo è separato da la conservazione dell'inventario dei dispositiviL'inventario elimina i dispositivi che non si sono collegati a Capgo per 90 giorni. L'override di pulizia elimina anche la mappatura anche se il dispositivo è ancora attivo. Dettagli completi: Console e API override scadono dopo 90 giorni.

Aprire un canale e rimanere sulla Informazioni scheda. L'aggiornamento del pacchetto è nella lista delle impostazioni, sotto Disabilita l'aggiornamento automatico.

Aggiornamento del pacchetto a discesa su un canale Capgo che mostra Zip e delta, Zip solo, Delta solo, Zip solo da builtin, e Delta solo da builtin
Aggiorna il pacchetto sul canale nella scheda Informazioni. I nuovi canali predefiniti utilizzano Zip e delta.

Questa impostazione sceglie cosa Capgo invia quando un dispositivo su questo canale cerca un aggiornamento. Lascia Zip e delta a meno che tu non debba forzare un tipo.

Etichetta nella consoleCLI / API valoreCosa i dispositivi scaricano
Zip e deltaallUn file zip completo e un delta quando entrambi esistono. Questo è il valore predefinito.
Zip solozipSolo il file zip completo.
Solo il deltadeltaSolo i file modificati. I plugin che non possono applicare un delta ricevono comunque un zip.
Zip solo da builtinzip_from_builtinZip solo mentre il dispositivo è ancora sul binario dello store. Dopo il primo aggiornamento live, Capgo serve nuovamente zip e delta.
Delta solo da builtindelta_from_builtinDelta solo mentre il dispositivo è ancora sul binario dello store. Dopo il primo aggiornamento live, Capgo serve nuovamente zip e delta.

Builtin è i contenuti web spediti all'interno del binario dell'App Store o Play Store, prima di qualsiasi Capgo aggiornamento. Utilizza un from builtin modalità quando il primo aggiornamento dal build dello store dovrebbe essere zip-solo o delta-solo, e gli aggiornamenti successivi possono utilizzare entrambi.

Capgo non associerà un canale zip-solo con un bundle delta-solo, o viceversa. La console, CLI, e I canali API rifiutano la salvezza e vi dicono di caricare il pacchetto mancante o di cambiare la modalità.

Puoi impostare lo stesso valore dalla CLI. Il canale deve già esistere:

Finestra del terminale
npx @capgo/cli@latest channel set production com.example.app --update-package zip

Valori validi: all, zip, delta, zip_from_builtin, delta_from_builtin.

Il canale Informazioni La scheda include un Rullata progressiva Sezione. Imposta un bundle di destinazione, scegli il percentuale e la durata della cache di decisione, quindi abilita il rullo. Dalla stessa sezione puoi sospendere o riprendere l'esposizione, promuovere il target a stabile, rimandarlo o configurare un'interruzione automatica, un rimbalzo o una notifica quando i segnali di fallimento superano un limite.

Controlli di rullata progressiva in un canale Capgo
I controlli di rullata progressiva appaiono in cima alla scheda Informazioni del canale.

Leggi Rollout progressivo Prima di abilitare uno. Spiega le cohorti adesive, i cambiamenti di percentuale sicuri e il comportamento di pausa automatica.

Se stai utilizzando Canali context:Canali, pagina/area: Pagina di marketing delle soluzioni Capgo. Ruolo: Etichetta di navigazione breve o elemento UI. Visto in: pagina solutions/white-label.astro. Chiave di messaggio `solutions_white_label_visual_cell2_value` (Valore della cella visiva del white label delle soluzioni). per pianificare la routing dei canali e il rollout in fase di staging, connettilo con Canali context:Canali, pagina/area: Pagina di marketing delle soluzioni Capgo. Ruolo: Etichetta di navigazione breve o elemento UI. Visto in: pagina solutions/white-label.astro. Chiave di messaggio `solutions_white_label_visual_cell2_value` (Valore della cella visiva del white label delle soluzioni). per i dettagli di implementazione in Canali, Soluzione di Test Beta per il flusso di lavoro del prodotto in Soluzione di Test Beta Soluzione di Targeting della Versione per il flusso di lavoro del prodotto in Soluzione di Targeting della Versione, e Capgo Pratiche per l'ambiente: Staging con un ID di App Mobile per il contesto pratico in Capgo Pratiche per l'ambiente: Staging con un ID di App Mobile.