Google is committed to advancing racial equity for Black communities. See how.
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Parametri e condizioni di configurazione remota

Quando utilizzi la console Firebase o le API back-end di Remote Config , definisci uno o più parametri (coppie chiave-valore) e fornisci valori predefiniti in-app per tali parametri. È possibile sovrascrivere i valori predefiniti in-app definendo i valori dei parametri lato server. Le chiavi e i valori dei parametri sono stringhe, ma è possibile eseguire il cast dei valori dei parametri come altri tipi di dati quando si utilizzano questi valori nella propria app.

Utilizzando la console Firebase o l' API REST di Remote Config , puoi creare nuovi valori predefiniti per i tuoi parametri, nonché valori condizionali utilizzati per scegliere come target gruppi di istanze dell'app. Ogni volta che aggiorni la tua configurazione nella console Firebase, Firebase crea e pubblica una nuova versione del tuo modello Remote Config. La versione precedente viene archiviata, consentendo di recuperare o ripristinare se necessario. Queste operazioni sono disponibili anche tramite l'API REST.

Questa guida spiega parametri, condizioni, regole, valori condizionali e come viene assegnata la priorità ai vari valori dei parametri nel server Remote Config e nella tua app. Fornisce inoltre dettagli sui tipi di regole utilizzate per creare le condizioni.

Condizioni, regole e valori condizionali

Una condizione viene utilizzata per indirizzare un gruppo di istanze di app. Le condizioni sono costituite da una o più regole che devono tutte restituire true affinché la condizione restituisca true per una determinata istanza dell'app. Se il valore di una regola non è definito (ad esempio, quando non è disponibile alcun valore), tale regola restituirà false .

Ad esempio, un parametro che definisce la splash page di un'app potrebbe visualizzare immagini diverse in base al tipo di sistema operativo utilizzando la regola semplice if device_os = Android :

In alternativa, è possibile utilizzare una condizione temporale per controllare quando la tua app mostra articoli promozionali speciali.

Un parametro può avere più valori condizionali che utilizzano condizioni diverse e i parametri possono condividere condizioni all'interno di un progetto.

Priorità del valore del parametro

A un parametro possono essere associati diversi valori condizionali. Le regole seguenti determinano quale valore viene recuperato dal Remote Config Server e quale valore viene utilizzato in una determinata istanza dell'app in un determinato momento:

I valori dei parametri lato server vengono recuperati in base al seguente elenco di priorità

  1. Innanzitutto, vengono applicati i valori condizionali, se presenti condizioni che restituiscono true per una determinata istanza dell'app. Se più condizioni vengono valutate come true , la prima (in alto) visualizzata nell'interfaccia utente della console Firebase ha la precedenza e i valori condizionali associati a tale condizione vengono forniti quando un'app recupera i valori dal back-end. È possibile modificare la priorità delle condizioni trascinando le condizioni nella scheda Condizioni .

  2. Se non sono presenti valori condizionali con condizioni che restituiscono true , viene fornito il valore predefinito lato server quando un'app recupera i valori dal back-end. Se un parametro non esiste nel back-end o se il valore predefinito è impostato su Nessun valore , non viene fornito alcun valore per quel parametro quando un'app recupera i valori.

Nella tua app, i valori dei parametri vengono restituiti dai metodi get base al seguente elenco di priorità

  1. Se un valore è stato recuperato dal backend e quindi attivato, l'app utilizza il valore recuperato. I valori dei parametri attivati ​​sono persistenti.
  2. Se nessun valore è stato recuperato dal back-end o se i valori recuperati dal back-end di Remote Config non sono stati attivati, l'app utilizza il valore predefinito in-app.
  3. Se non è stato impostato alcun valore predefinito in-app, l'app utilizza un valore di tipo statico (come 0 per int e false per boolean ).

Questo grafico riepiloga la priorità dei valori dei parametri nel back-end di Remote Config e nell'app:

Gruppi di parametri

Remote Config consente di raggruppare i parametri insieme per un'interfaccia utente e un modello mentale più organizzati.

Ad esempio, supponiamo che sia necessario abilitare o disabilitare tre diversi tipi di autorizzazione durante il lancio di una nuova funzionalità di accesso. Con Remote Config, è possibile creare i tre parametri per abilitare i tipi desiderati, quindi organizzarli in un gruppo denominato "Nuovo accesso", senza la necessità di aggiungere prefissi o ordinamenti speciali.

Puoi creare gruppi di parametri utilizzando la console Firebase o l'API REST di Remote Config. Ogni gruppo di parametri che crei ha un nome univoco nel modello di Remote Config. Quando si creano gruppi di parametri, tenere presente:

  • I parametri possono essere inclusi in un solo gruppo alla volta e una chiave di parametro deve essere ancora univoca in tutti i parametri.
  • I nomi dei gruppi di parametri sono limitati a 256 caratteri.
  • Se utilizzi sia l'API REST che la console Firebase, assicurati che l'eventuale logica dell'API REST sia aggiornata per gestire i gruppi di parametri durante la pubblicazione.

Crea o modifica i gruppi di parametri utilizzando la console Firebase

Puoi raggruppare i parametri nella scheda Parametri della console Firebase. Per creare o modificare un gruppo:

  1. Seleziona Gestisci gruppi .
  2. Seleziona le caselle di controllo per i parametri che desideri aggiungere e seleziona Sposta nel gruppo .
  3. Seleziona un gruppo esistente o creane uno nuovo inserendo un nome e una descrizione e selezionando Crea nuovo gruppo . Dopo aver salvato un gruppo, è disponibile per essere pubblicato utilizzando il pulsante Pubblica modifiche .

Crea gruppi a livello di codice

L' API REST di Remote Config fornisce un modo automatizzato per creare e pubblicare gruppi di parametri. Supponendo che tu abbia familiarità con REST e sia impostato per autorizzare le richieste all'API, puoi eseguire questi passaggi per gestire i gruppi a livello di programmazione:

  1. Recupera il modello corrente
  2. Aggiungi oggetti JSON per rappresentare i tuoi gruppi di parametri
  3. Pubblica i gruppi di parametri utilizzando una richiesta HTTP PUT.

L'oggetto parameterGroups contiene le chiavi di gruppo, con una descrizione nidificata e un elenco di parametri raggruppati. Tieni presente che ogni chiave di gruppo deve essere univoca a livello globale.

Ad esempio, ecco un estratto da una revisione del modello che aggiunge il gruppo di parametri "nuovo menu" con un parametro, pumpkin_spice_season :

{
  "parameters": {},
  "version": {
    "versionNumber": "1",

    …


  },
  "parameterGroups": {
    "new menu": {
      "description": "New Menu",
      "parameters": {
        "pumpkin_spice_season": {
          "defaultValue": {
            "value": "true"
          },
          "description": "Whether it's currently pumpkin spice season."
        }
      }
    }
  }
}

Tipi di regole delle condizioni

I seguenti tipi di regole sono supportati nella console Firebase. Funzionalità equivalenti sono disponibili nell'API REST Remote Config, come descritto in dettaglio nel riferimento all'espressione condizionale .

Tipo di regola Operatore (i) Valori) Nota
App == Seleziona da un elenco di ID app per le app associate al tuo progetto Firebase. Quando aggiungi un'app a Firebase, inserisci un ID bundle iOS o il nome del pacchetto Android che definisce un attributo esposto come ID app nelle regole di Remote Config.

Usa questo attributo come segue:
  • Per iOS: utilizza CFBundleIdentifier dell'app . Puoi trovare l' identificatore del bundle nella scheda Generale per il target principale della tua app in Xcode.
  • Per Android: utilizza l'ID dell'applicazione dell'app . Puoi trovare l' build.gradle applicationId nel file build.gradle livello di build.gradle .
Versione dell'app Per i valori di stringa:
corrisponde esattamente,
contiene,
non contiene,
espressione regolare

Per i valori numerici:
=, ≠,>, ≥, <, ≤

Specifica le versioni della tua app da scegliere come target.

Prima di utilizzare questa regola, devi utilizzare una regola App ID per selezionare un'app Android / iOS associata al tuo progetto Firebase.

Per iOS: utilizza CFBundleShortVersionString dell'app .

Nota: assicurati che la tua app iOS utilizzi Firebase iOS SDK versione 6.24.0 o successiva, poiché CFBundleShortVersionString non viene inviato nelle versioni precedenti (vedi note di rilascio ).

Per Android: usa versionName dell'app .

I confronti tra stringhe per questa regola fanno distinzione tra maiuscole e minuscole. Quando si utilizza l'operatore Corrispondenza esatta , Contiene , Non contiene o Espressione regolare , è possibile selezionare più valori.

Quando si utilizza l'operatore di espressione regolare , è possibile creare espressioni regolari in formato RE2 . La tua espressione regolare può corrispondere a tutta o parte della stringa della versione di destinazione. È inoltre possibile utilizzare gli ancoraggi ^ e $ per abbinare l'inizio, la fine o l'intera stringa di destinazione.

Numero build Per i valori di stringa:
corrisponde esattamente,
contiene,
non contiene,
espressione regolare

Per i valori numerici:
=, ≠,>, ≥, <, ≤

Specifica le build della tua app da scegliere come target.

Prima di utilizzare questa regola, devi utilizzare una regola App ID per selezionare un'app iOS associata al tuo progetto Firebase.

Questo operatore è disponibile solo per le app iOS e corrisponde alla CFBundleVersion dell'app . I confronti tra stringhe per questa regola fanno distinzione tra maiuscole e minuscole.

Quando si utilizza l'operatore Corrispondenza esatta , Contiene , Non contiene o Espressione regolare , è possibile selezionare più valori.

Quando si utilizza l'operatore di espressione regolare , è possibile creare espressioni regolari in formato RE2 . La tua espressione regolare può corrispondere a tutta o parte della stringa della versione di destinazione. È inoltre possibile utilizzare gli ancoraggi ^ e $ per abbinare l'inizio, la fine o l'intera stringa di destinazione.

Tipo di sistema operativo == iOS
Android
Appuntamento <=,> Una data e un'ora specificate, nel fuso orario del dispositivo o in un fuso orario specificato come "(GMT + 11) ora di Sydney". Confronta l'ora corrente con l'ora di recupero del dispositivo.
Utente in percentile casuale <=,> 0-100

Utilizza questo campo per applicare una modifica a un campione casuale di istanze dell'app (con dimensioni del campione fino allo 0,0001%), utilizzando gli operatori <= e > per segmentare gli utenti (istanze dell'app) in gruppi.

Ogni istanza dell'app viene mappata in modo persistente a un numero intero o frazionario casuale, in base a una chiave definita in quel progetto. Una regola utilizzerà la chiave predefinita (mostrata come DEF nella console Firebase) a meno che non selezioni o crei un'altra chiave. È possibile restituire una regola all'utilizzo della chiave predefinita deselezionando il campo Randomizza utenti utilizzando questa chiave . Puoi utilizzare un'unica chiave tra le regole per indirizzare in modo coerente le stesse istanze di app entro determinati intervalli di percentuali. In alternativa, puoi selezionare un nuovo gruppo di istanze di app assegnato in modo casuale per un determinato intervallo di percentuale creando una nuova chiave.

Ad esempio, per creare due condizioni correlate che si applicano ciascuna a un 5% non sovrapposto degli utenti di un'app, è possibile che una condizione includa una regola <= 5% e un'altra condizione includa sia una regola > 5% sia una regola <= Regola del 10% . Per consentire ad alcuni utenti di apparire casualmente in entrambi i gruppi, utilizzare chiavi diverse per le regole in ciascuna condizione.

Utente nel pubblico == Seleziona uno o più da un elenco di segmenti di pubblico di Google Analytics che hai impostato per il tuo progetto.

Questa regola richiede una regola App ID per selezionare un'app associata al tuo progetto Firebase.

Nota: poiché molti segmenti di pubblico di Analytics sono definiti da eventi o proprietà utente, che possono essere basati sulle azioni degli utenti dell'app, potrebbe essere necessario del tempo prima che una regola Utente nel pubblico abbia effetto per una determinata istanza dell'app.

Dispositivo nella regione / paese == Seleziona una o più regioni o paesi. Questa regola restituisce true per una determinata istanza dell'app se l'istanza si trova in una delle regioni o dei paesi elencati. Il codice del paese del dispositivo viene determinato utilizzando l'indirizzo IP del dispositivo nella richiesta o il codice del paese determinato da Firebase Analytics (se i dati di Analytics sono condivisi con Firebase).
Lingua del dispositivo == Seleziona una o più lingue. Questa regola restituisce true per una determinata istanza di app se tale istanza di app è installata su un dispositivo che utilizza una delle lingue elencate.
Proprietà dell'utente Per i valori di stringa:
contiene,
non contiene,
corrisponde esattamente,
espressione regolare

Per i valori numerici:
=, ≠,>, ≥, <, ≤

Nota: sul client, è possibile impostare solo valori stringa per le proprietà utente. Per le condizioni che utilizzano operatori numerici, Remote Config converte il valore della proprietà utente corrispondente in un numero intero / float.
Seleziona da un elenco di proprietà utente di Google Analytics disponibili. Per sapere come utilizzare le proprietà utente per personalizzare la tua app per segmenti molto specifici della tua base utenti, vedi Configurazione remota e proprietà utente .

Per ulteriori informazioni sulle proprietà utente, vedere le seguenti guide:

Quando si utilizza l'operatore Corrispondenza esatta , Contiene , Non contiene o Espressione regolare , è possibile selezionare più valori.

Quando si utilizza l'operatore di espressione regolare , è possibile creare espressioni regolari in formato RE2 . La tua espressione regolare può corrispondere a tutta o parte della stringa della versione di destinazione. È inoltre possibile utilizzare gli ancoraggi ^ e $ per abbinare l'inizio, la fine o l'intera stringa di destinazione.

Nota: le proprietà utente raccolte automaticamente non sono attualmente disponibili durante la creazione delle condizioni di Remote Config.

Ricerca di parametri e condizioni

Puoi cercare le chiavi dei parametri, i valori dei parametri e le condizioni del tuo progetto dalla console Firebase utilizzando la casella di ricerca nella parte superiore della scheda Parametri di configurazione remota.

Limiti su parametri e condizioni

All'interno di un progetto Firebase, puoi avere fino a 2000 parametri e fino a 500 condizioni. Le chiavi dei parametri possono essere lunghe fino a 256 caratteri, devono iniziare con un trattino basso o una lettera inglese (AZ, az) e possono includere anche numeri. La lunghezza totale delle stringhe dei valori dei parametri all'interno di un progetto non può superare 800.000 caratteri.

Prossimi passi

Per iniziare a configurare il tuo progetto Firebase, vedi Impostare un progetto Firebase Remote Config .