Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

Riferimento all'espressione condizionale di configurazione remota

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Questa pagina contiene informazioni di riferimento per la creazione di espressioni condizionali utilizzando le API di back-end di Remote Config o la console Firebase. Per ulteriori informazioni sulla configurazione e l'utilizzo delle API di back-end, vedere modificare la configurazione remota a livello di codice.

Elementi utilizzati per creare condizioni

L'API REST Remote Config supporta gli stessi elementi che puoi utilizzare per creare condizioni durante la configurazione di Remote Config utilizzando Firebase Console:

Elemento Descrizione
&&

Utilizzato per creare una "e" logica di elementi se si utilizza più di un elemento per una condizione. Se un elemento viene utilizzato nella sintassi REST senza && , quell'elemento viene trattato come una condizione.

Nota: è necessario uno spazio prima e dopo le e commerciali. Ad esempio: element1 && element2 .

app.build

Valuta su TRUE o FALSE in base al valore del numero di build di un'app.

Nota: disponibile solo su dispositivi Apple e Android. Per Apple, usa il valore di CFBundleVersion e per Android, usa il valore di versionCode .

app.version

Restituisce TRUE o FALSE in base al valore del numero di versione di un'app.

Nota: per i dispositivi Android utilizzare il valore di versionName e per i dispositivi Apple utilizzare il valore di CFBundleShortVersionString .

app.id Un elemento basato sull'ID app Firebase dell'app
app.audiences Un elemento che restituisce TRUE o FALSE in base alla presenza o all'assenza dell'utente in uno o più segmenti di pubblico di Firebase Analytics .
app.userProperty Un elemento che restituisce TRUE o FALSE in base al valore numerico o stringa di una proprietà utente di Firebase Analytics .
app.operatingSystemAndVersion

Un elemento basato sul sistema operativo su cui è in esecuzione un'app. Restituisce TRUE quando la versione del sistema operativo e del sistema operativo corrisponde alla destinazione specificata.

Nota: disponibile solo per le app Web.

app.browserAndVersion

Un elemento basato sul browser su cui è in esecuzione un'app. Restituisce TRUE quando il browser e la versione del browser corrispondono alla destinazione specificata.

Nota: disponibile solo per le app Web.

app.firebaseInstallationId Un elemento basato sugli ID di installazioni di dispositivi specifici. Restituisce TRUE quando l' ID di installazione corrisponde a uno degli ID di installazione specificati.
device.country Un elemento basato sulla regione/paese in cui si trova un dispositivo, utilizzando lo standard ISO 3166-1 alpha-2 (ad esempio, Stati Uniti o Regno Unito). Restituisce TRUE quando un paese corrisponde a un codice paese previsto.
device.dateTime Un elemento basato sull'ora dell'ultimo recupero eseguito dal dispositivo. Utilizza il formato della data ISO con l'opzione per specificare un fuso orario fisso; ad esempio, dateTime('2017-03-22T13:39:44', 'America/Los_Angeles') .
device.language Un elemento basato sulla lingua selezionata su un dispositivo. La lingua è rappresentata utilizzando un tag IETF Language come es-ES, pt-BR o en-US. Restituisce TRUE quando una lingua corrisponde a un codice lingua previsto.
device.os Un elemento basato sul sistema operativo utilizzato su un dispositivo (Apple o Android). Restituisce TRUE quando il sistema operativo del dispositivo è del tipo previsto.
percent Valuta TRUE in base all'inclusione di un utente in un percentile frazionario assegnato in modo casuale (con dimensioni del campione di appena 0,000001%).

Una condizione a elemento singolo contiene tre campi:

  1. Un name definito in modo arbitrario (fino a 100 caratteri)
  2. Un'espressione condizionale che restituisce TRUE o FALSE , composta dagli elementi mostrati sopra.
  3. (Facoltativo) Il tagColor , che può essere " BLUE ", " BROWN ", " CYAN ", " DEEP_ORANGE ", " GREEN ", " INDIGO ", " LIME ", " ORANGE ", " PINK ", " PURPLE " o " TEAL ". Il colore non fa distinzione tra maiuscole e minuscole e influisce solo sulla modalità di visualizzazione delle condizioni nella console Firebase.

Operatori supportati

Ad esempio, app.build.notContains([123, 456]) restituisce TRUE se la build dell'app effettiva è 123 o 492, ma restituisce FALSE se la build dell'app effettiva è 999. Ad esempio, app.version.notContains([123, 456]) restituisce TRUE se la versione effettiva dell'app è 123 o 492, ma restituisce FALSE se la versione effettiva dell'app è 999.
Elemento Operatori supportati Descrizione
app.audiences .inAtLeastOne([...]) Restituisce TRUE se il pubblico effettivo corrisponde ad almeno un nome di pubblico nell'elenco.
Per esempio:

app.audiences.inAtLeastOne(['Audience 1', 'Audience 2'])

app.audiences .notInAtLeastOne([...]) Restituisce TRUE se il pubblico effettivo non corrisponde ad almeno un nome di pubblico nell'elenco.
app.audiences .inAll([...]) Restituisce TRUE se il pubblico effettivo è un membro di ogni nome del pubblico nell'elenco.
app.audiences .notInAll([...]) Restituisce TRUE se il pubblico effettivo non è un membro di alcun pubblico nell'elenco.
app.userProperty < , <= , == , != , >= , > Restituisce TRUE se la proprietà utente effettiva viene confrontata numericamente con il valore specificato in un modo che corrisponda all'operatore.
app.userProperty .contains([...]) Restituisce TRUE se uno qualsiasi dei valori di destinazione è una sottostringa della proprietà utente effettiva.
app.userProperty .notContains([...]) Restituisce TRUE se nessuno dei valori di destinazione è una sottostringa della proprietà utente effettiva.
app.userProperty .exactlyMatches([...]) Restituisce TRUE se la proprietà dell'utente effettiva corrisponde esattamente (con distinzione tra maiuscole e minuscole) qualsiasi valore di destinazione nell'elenco.
app.userProperty .matches([...]) Restituisce TRUE se un'espressione regolare di destinazione nell'elenco corrisponde a una sottostringa o all'intero valore effettivo. Per forzare la corrispondenza dell'intera stringa, prefazione dell'espressione regolare con "^" e suffisso con "$". Utilizza la sintassi RE2 .
app.id == Restituisce TRUE se il valore specificato corrisponde all'ID app dell'app.
app.build < , <= , == , != , >= , > Restituisce TRUE se la build dell'app effettiva viene confrontata numericamente con il valore specificato in modo che corrisponda all'operatore.
app.build .contains([...]) Restituisce TRUE se uno qualsiasi dei valori di destinazione è una sottostringa della build dell'app effettiva, ad esempio "a" e "bc" sono sottostringhe di "abc".
app.build .notContains([...]) Restituisce TRUE se nessuno dei valori di destinazione è una sottostringa della build dell'app effettiva.
app.build .exactlyMatches([...]) Restituisce TRUE se la build dell'app effettiva corrisponde esattamente a uno qualsiasi dei valori di destinazione nell'elenco.
app.build .matches([...]) Restituisce TRUE se un'espressione regolare di destinazione nell'elenco corrisponde a una sottostringa o all'intero valore effettivo. Per forzare la corrispondenza dell'intera stringa, prefazione dell'espressione regolare con "^" e suffisso con "$". Utilizza la sintassi RE2 .
app.version < , <= , == , != , >= , > Restituisce TRUE se la versione effettiva dell'app viene confrontata numericamente con il valore specificato in modo che corrisponda all'operatore.
app.version .contains([...]) Restituisce TRUE se uno qualsiasi dei valori di destinazione è una sottostringa della versione effettiva dell'app, ad esempio "a" e "bc" sono sottostringhe di "abc".
app.version .notContains([...]) Restituisce TRUE se nessuno dei valori di destinazione è una sottostringa della versione effettiva dell'app.
app.version .exactlyMatches([...]) Restituisce TRUE se la versione effettiva dell'app corrisponde esattamente a uno qualsiasi dei valori di destinazione nell'elenco.
app.version .matches([...]) Restituisce TRUE se un'espressione regolare di destinazione nell'elenco corrisponde a una sottostringa o all'intero valore effettivo. Per forzare la corrispondenza dell'intera stringa, prefazione dell'espressione regolare con "^" e suffisso con "$". Utilizza la sintassi RE2 .
app.operatingSystemAndVersion .inOne([...]) Restituisce TRUE se il sistema operativo e la versione corrispondono a uno qualsiasi dei valori di destinazione nell'elenco.
Per esempio:

    app.operatingSystemAndVersion.inOne([operatingSystemName('Macintosh').version.==('10.15')])
    

app.browserAndVersion .inOne([...]) Restituisce TRUE se il browser e la versione corrispondono a uno qualsiasi dei valori di destinazione nell'elenco.
Per esempio:

    app.browserAndVersion.inOne([browserName('Chrome').anyVersion])
    

app.firebaseInstallationId in [...] Restituisce TRUE se l'ID di installazione corrisponde a uno specificato nell'elenco. Esempio di utilizzo: app.firebaseInstallationId in ['eyJhbGciOiJFUzI1N_iIs5', 'eapzYQai_g8flVQyfKoGs7']
device.country in [...] Restituisce TRUE se il paese del dispositivo corrisponde a uno specificato nell'elenco. Esempio di utilizzo: device.country in ['gb', 'us'] . Il codice paese del dispositivo viene determinato utilizzando l'indirizzo IP del dispositivo nella richiesta o il codice paese determinato da Firebase Analytics (se i dati di Analytics sono condivisi con Firebase).
device.dateTime <= , > Confronta l'ora corrente con l'ora target della condizione e restituisce TRUE o FALSE in base all'operatore. Esempio di utilizzo: dateTime < dateTime('2017-03-22T13:39:44') .
device.language in [...] Restituisce TRUE se una delle lingue dell'app corrisponde a una lingua nell'elenco. Esempio di utilizzo: device.language in ['en-UK', 'en-US'] .
device.os == , != Restituisce TRUE se il sistema operativo del dispositivo viene confrontato con il valore in quel campo corrispondente all'operatore.
percent <= , > Restituisce TRUE se il valore nel campo percent viene confrontato con il valore assegnato casualmente in corrispondenza dell'operatore.