Comprendi la configurazione remota in tempo reale


Real-time Remote Config ti consente di ricevere chiavi e valori dei parametri aggiornati non appena vengono pubblicati sul server. Ciò consente di aggiornare rapidamente qualsiasi tipo di attributo dell'app controllato utilizzando un valore del parametro Remote Config. Con gli aggiornamenti di Remote Config in tempo reale, puoi:

  • Riduci i rischi distribuendo le funzionalità in modo incrementale agli utenti target ed eseguendo un rollback di emergenza, se necessario.
  • Aumenta il coinvolgimento degli utenti personalizzando rapidamente le esperienze degli utenti mentre utilizzano l'app. Ad esempio, potresti aggiornare i banner e offrire incentivi per gli utenti che corrispondono a specifiche proprietà utente di Google Analytics o regolare dinamicamente la difficoltà del gioco per gruppi di giocatori.
  • Riduci le dipendenze di compilazione e aumenta la produttività degli sviluppatori: utilizza i parametri di Remote Config come indicatori di funzionalità per esporre le funzionalità ai team di sviluppo e test, mantenendole nascoste agli utenti in produzione.

Per ulteriori informazioni sui modi in cui puoi utilizzare Remote Config, vedi Cosa puoi fare con Remote Config?

In questa guida potrai:

  • Scopri di più sulla relazione client-server che supporta gli aggiornamenti in tempo reale.
  • Comprendere come funziona la funzionalità in tempo reale nell'SDK.
  • Scopri come utilizzare gli aggiornamenti in tempo reale per mantenere aggiornata la configurazione della tua app.

La connessione client-server in tempo reale

Quando implementi Remote Config in tempo reale nella tua app, crei un ascoltatore in tempo reale che apre una connessione HTTP al backend Remote Config. La richiesta include la versione di configurazione attualmente memorizzata nella cache del dispositivo. Il server Remote Config in tempo reale utilizza un messaggio di invalidamento per segnalare all'app quando deve essere recuperata una versione più recente di una configurazione lato server.

Se il server ha una versione più recente, invia immediatamente il segnale di invalidazione. Se non dispone di una versione più recente, mantiene aperta la connessione e attende finché non ne viene pubblicata una sul server. Quando l'SDK del client riceve un segnale di invalidamento, lo recupera automaticamente, quindi richiama la richiamata del listener registrata quando hai aperto la connessione del listener. Questo recupero è simile alla chiamata di recupero che puoi effettuare con l'SDK, ma ignora qualsiasi impostazione di memorizzazione nella cache o minimumFetchInterval . La connessione client-server viene mantenuta mentre l'app è in primo piano.

Flusso di lavoro client-server Remote Config in tempo reale

Poiché la connessione client-server viene effettuata tramite HTTP, non richiede alcuna dipendenza da altre librerie.

Ascolta gli aggiornamenti

Gli aggiornamenti in tempo reale completano le chiamate fetch di Remote Config. Ti consigliamo di chiamare fetch all'avvio dell'app (o in un momento qualsiasi durante il ciclo di vita dell'app) e di ascoltare gli aggiornamenti di Remote Config in tempo reale durante la sessione utente per assicurarti di disporre dei valori più recenti non appena vengono pubblicati sul server.

Per ascoltare gli aggiornamenti, chiamareaddOnConfigUpdateListener ,implementando una richiamata che viene richiamata ogni volta che viene eseguito un Remote L'aggiornamento della configurazione è disponibile nell'app . Dietro le quinte, questa chiamata inizia ad ascoltare gli aggiornamenti dal server Remote Config. Per ulteriori informazioni sulla relazione client-server, vedere la sezione precedente .

Il callback è spesso un buon punto in cui utilizzare activate per rendere disponibili i parametri di configurazione aggiornati per la tua app. Consulta Strategie di caricamento di Firebase Remote Config per ulteriori strategie per attivare i valori dei parametri quando utilizzi Remote Config in tempo reale.

Attiva selettivamente i valori dei parametri

Quando chiamiaddOnConfigUpdateListener ,puoi attendere la modifica e attivarla.

Il callback onUpdate viene chiamato quando sia una nuova versione del modello è stata recuperata automaticamente sia quando quella nuova versione presenta modifiche ai valori dei parametri attualmente attivati ​​nell'app.

Questi callback vengono richiamati con un parametro configUpdate . configUpdate contieneupdatedKeys ,che è l'insieme di chiavi dei parametri modificati che ha avviato l'aggiornamento in tempo reale e include quanto segue:

  • Chiavi dei parametri aggiunte o rimosse
  • Chiavi dei parametri i cui valori sono cambiati
  • Chiavi dei parametri i cui metadati sono cambiati (ad esempio, informazioni sulla personalizzazione di Remote Config)
  • Chiavi dei parametri la cui origine del valore è cambiata (ad esempio, un valore predefinito in-app aggiornato a un valore lato server)

Se utilizzi un ascoltatore in tempo reale in una particolare vista all'interno della tua app, puoi verificare se i parametri relativi a quella vista sono cambiati prima dell'attivazione.

Occasionalmente, un recupero (avviato quando si chiama il metodo fetch o tramite Remote Config in tempo reale) non comporta un aggiornamento per il client. In questi casi, il metodo o il completamentoonUpdatenon verrà chiamato.

Aggiungi e rimuovi ascoltatori

addOnConfigUpdateListenerè il punto di ingresso principale per Remote Config in tempo reale. La chiamata a questo ascoltatore per la prima volta nel ciclo di vita della tua app apre la connessione al back-end. Le chiamate successive riutilizzano la stessa connessione, multiplexando il messaggio di invalidamento descritto nella connessione client-server in tempo reale .

La chiamata restituisce una "registrazione dell'ascoltatore", che ha un metodo chiamatoremove .

Per interrompere l'ascolto memorizzare il riferimento alla registrazione dell'ascoltatore. Chiama remove per interrompere l'ascolto in questa registrazione. Se è l'unico ascoltatore registrato, la chiamata remove chiude la connessione in tempo reale al server.

Sebbene sia possibile interrompere manualmente l'ascolto degli aggiornamenti, spesso non è necessario. Real-time Remote Config interrompe automaticamente l'ascolto degli aggiornamenti quando l'app entra in background e si riavvia quando l'app viene messa in primo piano.

Prossimi passi

Consulta Inizia con Firebase Remote Config per configurare Remote Config e iniziare ad ascoltare gli aggiornamenti in tempo reale .