Check out what’s new from Firebase at Google I/O 2022. Learn more

Strategie di caricamento della configurazione remota di Firebase

Firebase Remote Config offre molta flessibilità su come e quando recuperare nuovi valori dal server e attivarli nella tua app, consentendoti di garantire un'esperienza utente finale di qualità controllando i tempi di eventuali modifiche visibili alla configurazione. Questa guida esamina alcune strategie di caricamento e discute le considerazioni chiave per scegliere l'opzione migliore per la tua app.

Strategia 1: recupera e attiva al caricamento

In questa strategia, la tua app chiamerebbe fetchAndActivate() quando la tua app si avvia per la prima volta per recuperare nuovi valori da Remote Config e attivarli non appena hanno terminato il caricamento. Questo semplice approccio funziona bene per le modifiche alla configurazione che non causano modifiche visive drammatiche nell'interfaccia utente. Dovrebbe essere evitato in qualsiasi situazione in cui l'interfaccia utente potrebbe cambiare notevolmente mentre gli utenti stanno utilizzandola.

Strategia 2: attiva dietro la schermata di caricamento

Come rimedio al potenziale problema dell'interfaccia utente riscontrato nella strategia 1, potresti fare affidamento su una schermata di caricamento. Invece di avviare subito l'app, mostra una schermata di caricamento e chiama fetchAndActivate nel gestore di completamento. Quindi subito dopo, sempre utilizzando una richiamata o una notifica, chiudi la schermata di caricamento e consenti all'utente di iniziare a interagire con la tua app.

Se utilizzi questa strategia, ti consigliamo di aggiungere un timeout alla schermata di caricamento. Il timeout di un minuto di Remote Config potrebbe essere troppo lungo per un'esperienza di avvio di app di qualità per gli utenti.

Strategia 3: carica nuovi valori per il prossimo avvio

Una strategia efficace consiste nel caricare nuovi valori di configurazione da attivare al prossimo avvio dell'app. In questa strategia, la tua app attiva i valori recuperati all'avvio prima di tentare di recuperarne di nuovi, partendo dal presupposto che potrebbe aver già recuperato, ma non ancora attivato, nuovi valori di configurazione. L'ordine delle operazioni per questa strategia è:

  1. All'avvio, attiva immediatamente i valori recuperati in precedenza. Questo applica tutti i valori che hai scaricato dal server in una sessione precedente ed è quasi istantaneo.
  2. Mentre l'utente interagisce con la tua app, avvia una chiamata asincrona per recuperare nuovi valori in base all'intervallo minimo di recupero predefinito.
  3. Nel gestore di completamento o nella richiamata per la chiamata di recupero, non eseguire alcuna operazione. La tua app manterrà i valori scaricati fino a quando non li attiverai al successivo avvio dell'app.

Con questa strategia, il tempo di attesa dell'utente è notevolmente ridotto. Tuttavia, l'utente deve eseguire l'app una seconda volta per visualizzare la configurazione più recente. Dovrai bilanciare queste considerazioni con la tua logica aziendale e dell'app.

Caricamento di anti-strategie

Come avrai capito dalla discussione precedente sul caricamento di pro e contro, ci sono un paio di schemi di utilizzo da evitare.

  • Non aggiornare o cambiare aspetto dell'interfaccia utente mentre l'utente la sta visualizzando o interagisce con essa, a meno che tu non abbia validi motivi aziendali o app per farlo, come la rimozione di opzioni relative a una promozione appena terminata.
  • Non inviare un gran numero di richieste di recupero simultanee, che potrebbero comportare la limitazione dell'app da parte del server. I rischi che ciò accada sono bassi nella maggior parte degli scenari di produzione, ma può essere un problema durante lo sviluppo attivo. Consulta la guida alla limitazione per le piattaforme Android e Apple .
  • Non fare affidamento sulla connettività di rete per ottenere valori di configurazione remota. Imposta i valori dei parametri predefiniti in-app in modo che la tua app si comporti sempre come previsto. È possibile mantenere periodicamente sincronizzati i valori predefiniti dell'app e del back-end Remote Config utilizzando i modelli predefiniti scaricati .

Prossimi passi

Queste tre strategie di base non comprendono in alcun modo un elenco completo dei modi per caricare i valori di configurazione. A seconda delle tue esigenze, potresti escogitare strategie molto più sofisticate come gli aggiornamenti in background guidati dalle funzioni descritti in Propaga aggiornamenti in tempo reale .

Consulta il riferimento API per la tua piattaforma per saperne di più sulle chiamate specifiche per il recupero e l'attivazione dei valori di configurazione.