Riferimento all'espressione condizionale Remote Config

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

Elementi usati per creare condizioni

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

Elemento Descrizione
&&

Utilizzato per creare una "e" logica di elementi se si utilizza più di un elemento per una condizione. Se un elemento è usato in sintassi RIPOSO senza && , tale elemento è trattata come una condizione.

Nota: uno spazio è necessario, prima e dopo i segni &. Per esempio: element1 && element2 .

app.build

Restituisce TRUE o FALSE in base al valore del numero di build di un'applicazione.

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

app.version

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

Nota: Per i dispositivi Android utilizzano il valore di versionName , e per Apple dispositivi utilizzano il valore di CFBundleShortVersionString .

app.id Un elemento basato sull'ID app Firebase dell'app
app.audiences Un elemento che restituisce TRUE o FALSE basano sulla presenza dell'utente o l'assenza di uno o più pubblico Firebase Analytics (s) .
app.predictionScores.id Un elemento che valuta la probabilità percentile utente del chiamante per un determinato ID Firebase Predictions.
app.userProperty Un elemento che restituisce TRUE o FALSE in base al valore numerico o stringa di un Firebase Analytics proprietà dell'utente .
app.operatingSystemAndVersion

Un elemento basato sul sistema operativo su cui è in esecuzione un'app. Restituisce TRUE quando il sistema operativo e la versione del sistema operativo corrisponda al target specificato.

Nota: disponibile solo per le applicazioni Web.

app.browserAndVersion

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

Nota: disponibile solo per le applicazioni 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 specificate.
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 di 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; per 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 di lingua IETF come es-ES, pt-BR o en-US. Restituisce TRUE quando una lingua corrisponde a un codice di 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 è il tipo previsto.
percent Restituisce TRUE basate su inclusione di un utente in un percentile frazionale randomizzati (con dimensioni del campione più piccolo 0.000001%).

Una condizione a elemento singolo contiene tre campi:

  1. Un arbitrariamente definito name (fino a 100 caratteri)
  2. Un'espressione condizionale che restituisce TRUE o FALSE , costituiti dagli elementi sopra indicati.
  3. (Opzionale) 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 visualizzazione delle condizioni nella console Firebase.

Operatori supportati

Ad esempio, app.build.notContains([123, 456]) restituisce TRUE se l'attuale accumulo applicazione è 123 o 492, ma ritorna FALSE se l'attuale accumulo app è 999. Ad esempio, app.version.notContains([123, 456]) restituisce TRUE se la versione attuale applicazione è 123 o 492, ma ritorna FALSE se la versione attuale applicazione è 999.
Elemento Operatori supportati Descrizione
app.audiences .inAtLeastOne([...]) Restituisce TRUE se il numero effettivo corrisponde almeno un nome pubblico nella lista.
Per esempio:

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

app.audiences .notInAtLeastOne([...]) Restituisce TRUE se il numero effettivo non corrisponde almeno un nome pubblico nella lista.
app.audiences .inAll([...]) Restituisce TRUE se il numero effettivo è membro di ogni nome pubblico nella lista.
app.audiences .notInAll([...]) Restituisce TRUE se il numero effettivo non è membro di qualsiasi tipo di pubblico nella lista.
app.predictionScores.id .between(..., ...) Restituisce TRUE se l'utente del chiamante percentile probabilità per la previsione è nel range indicato.
Per esempio:

app.predictionScores.id('churn').between(0.25, 1.00)

app.userProperty < , <= , == , != , >= , > Restituisce TRUE se la proprietà utente effettivo confronto numericamente al valore specificato in un modo che corrisponda l'operatore.
app.userProperty .contains([...]) Restituisce TRUE se uno dei valori target è una stringa della proprietà utente effettivo.
app.userProperty .notContains([...]) Restituisce TRUE se nessuno dei valori target è una stringa della proprietà utente effettivo.
app.userProperty .exactlyMatches([...]) Restituisce TRUE se la proprietà utente effettivo corrisponde esattamente (maiuscole e minuscole) uno qualsiasi dei valori di riferimento della lista.
app.userProperty .matches([...]) Restituisce TRUE se ogni obiettivo espressione regolare nella lista corrisponde a una sottostringa, o l'intero, valore effettivo. Per forzare la corrispondenza dell'intera stringa, anteponi all'espressione regolare "^" e aggiungi il suffisso "$". Utilizza RE2 sintassi.
app.id == Restituisce TRUE se il valore specificato corrisponda alla dell'applicazione App Id.
app.build < , <= , == , != , >= , > Restituisce TRUE se l'attuale accumulo applicazione confronta numericamente al valore specificato in un modo che corrisponda l'operatore.
app.build .contains([...]) Restituisce TRUE se uno dei valori target è una stringa della app attuale accumulo, ad esempio, "a" e "bc" sono stringhe di "ABC".
app.build .notContains([...]) Restituisce TRUE se nessuno dei valori target è una sottostringa di build applicazione vera e propria.
app.build .exactlyMatches([...]) Restituisce TRUE se l'attuale accumulo applicazione corrisponde esattamente uno qualsiasi dei valori di riferimento della lista.
app.build .matches([...]) Restituisce TRUE se ogni obiettivo espressione regolare nella lista corrisponde a una sottostringa, o l'intero, valore effettivo. Per forzare la corrispondenza dell'intera stringa, anteponi all'espressione regolare "^" e aggiungi il suffisso "$". Utilizza RE2 sintassi.
app.version < , <= , == , != , >= , > Restituisce TRUE se la versione attuale applicazione confronta numericamente al valore specificato in un modo che corrisponda l'operatore.
app.version .contains([...]) Restituisce TRUE se uno dei valori target è una stringa della app La versione attuale, ad esempio, "a" e "bc" sono stringhe di "ABC".
app.version .notContains([...]) Restituisce TRUE se nessuno dei valori target è una stringa della versione attuale app.
app.version .exactlyMatches([...]) Restituisce TRUE se la versione attuale applicazione corrisponde esattamente uno qualsiasi dei valori di riferimento della lista.
app.version .matches([...]) Restituisce TRUE se ogni obiettivo espressione regolare nella lista corrisponde a una sottostringa, o l'intero, valore effettivo. Per forzare la corrispondenza dell'intera stringa, anteponi all'espressione regolare "^" e aggiungi il suffisso "$". Utilizza RE2 sintassi.
app.operatingSystemAndVersion .inOne([...]) Restituisce TRUE se il sistema operativo e la versione corrisponde a uno dei valori di riferimento della lista.
Per esempio:

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

app.browserAndVersion .inOne([...]) Restituisce TRUE se il browser e la versione corrisponde a uno dei valori di riferimento della lista.
Per esempio:

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

app.firebaseInstallationId in [...] Restituisce TRUE se le partite di installazione id qualsiasi specificati nella lista. Utilizzo di esempio: app.firebaseInstallationId in ['eyJhbGciOiJFUzI1N_iIs5', 'eapzYQai_g8flVQyfKoGs7']
device.country in [...] Restituisce TRUE se le partite di campagna del dispositivo qualsiasi specificati nella lista. Utilizzo di esempio: 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 il tempo corrente al tempo target della condizione e restituisce TRUE o FALSE in relazione all'operatore. Utilizzo di esempio: dateTime < dateTime('2017-03-22T13:39:44') .
device.language in [...] Restituisce TRUE se una qualsiasi delle lingue del app corrisponde una lingua nella lista. Utilizzo di esempio: device.language in ['en-UK', 'en-US'] .
device.os == , != Restituisce TRUE se il sistema operativo del dispositivo confronta con il valore in quel campo corrispondenza l'operatore.
percent <= , > Restituisce TRUE se il valore in percent campo confronta con il valore che è stato assegnato in modo casuale corrispondenza dell'operatore.