Questa pagina contiene informazioni di riferimento per l'edilizia condizionale utilizzando le API di backend Remote Config o la console Firebase. Per per ulteriori informazioni sulla configurazione e l'utilizzo delle API di backend, consulta Modifica Remote Config in modo programmatico.
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 la Console Firebase:
Elemento | Descrizione |
---|---|
&& |
Utilizzato per creare un operatore logico "and" di elementi se utilizzi più di un elemento
per una condizione. Se un elemento viene utilizzato nella sintassi REST senza il parametro
Nota:è necessario inserire uno spazio prima e dopo la e commerciale. Ad esempio:
|
app.build |
Restituisce Nota: disponibile solo su dispositivi Apple e Android. Per Apple, utilizza il valore di CFBundleVersion e per Android il valore di versionCode. |
app.version |
Restituisce Nota: per i dispositivi Android, utilizza il valore di versionName, mentre per i dispositivi Apple utilizza 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
sulla presenza o sull'assenza dell'utente in uno o più
Segmenti di pubblico di Firebase Analytics: |
app.firstOpenTimestamp |
Un elemento basato sulla prima volta che l'utente avvia un'app, ottenuto da
l'evento first_open Google Analytics. Utilizza il formato della data ISO con la possibilità di specificare un fuso orario fisso, ad esempio app.firstOpenTimestamp >= ('2022-10-31T14:37:47', 'America/Los_Angeles') .
Se non viene specificato alcun fuso orario, viene utilizzato il fuso orario GMT.
|
app.userProperty |
Un elemento che restituisce TRUE o FALSE in base
sul valore numerico o stringa di un
Proprietà utente di Firebase Analytics. |
app.operatingSystemAndVersion |
Un elemento basato sul sistema operativo su cui è in esecuzione un'app.
Restituisce Nota: disponibile solo per le app web. |
app.browserAndVersion |
Un elemento basato sul browser su cui è in esecuzione un'app.
Restituisce Nota: disponibile solo per le app web. |
app.firebaseInstallationId |
Un elemento basato sugli ID di specifiche installazioni di dispositivi.
Restituisce TRUE quando l'ID di installazione
corrisponde a uno degli ID installazione specificati. |
device.country |
Un elemento basato sulla regione/sul paese in cui si trova un dispositivo, utilizzando
lo standard ISO 3166-1 alpha-2 (ad esempio, US o UK). Restituisce a
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 di 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 è
rappresentati utilizzando un tag Linguaggio IETF come es-ES, pt-BR o en-US.
Restituisce TRUE quando una lingua corrisponde a una lingua prevista
le API nel tuo codice. |
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 |
Valuta TRUE in base all'inclusione di un utente in una
percentuale frazionaria assegnata (con dimensioni del campione di appena 0,000001%). |
Una condizione a elemento singolo contiene tre campi:
- Un'istruzione
name
definita arbitrariamente (fino a 100 caratteri) - Un'espressione condizionale che restituisce
TRUE
oFALSE
, costituito dagli elementi mostrati sopra. - (Facoltativo) L'elemento
tagColor
, che può essere "BLUE
", "BROWN
", "CYAN
", "DEEP_ORANGE
", "GREEN
", "INDIGO
", "LIME
", "ORANGE
", "PINK
", "PURPLE
" o "TEAL
". Il colore è senza distinzione tra maiuscole e minuscole e influisce solo sulla modalità di visualizzazione delle condizioni nel 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 segmento di pubblico effettivo corrisponde ad almeno uno
nome del segmento di pubblico nell'elenco.Ad esempio: app.audiences.inAtLeastOne(['Audience 1', 'Audience 2']) |
app.audiences |
.notInAtLeastOne([...]) |
Restituisce TRUE se il pubblico effettivo non corrisponde almeno
un nome di segmento di pubblico nell'elenco. |
app.audiences |
.inAll([...]) |
Restituisce TRUE se il segmento di pubblico effettivo è membro di ogni nome di segmento di pubblico nell'elenco. |
app.audiences |
.notInAll([...]) |
Restituisce TRUE se il pubblico effettivo non è membro di nessuno
segmento di pubblico nell'elenco. |
app.firstOpenTimestamp |
<=, > |
Confronta l'ora dell'evento first_open con quella specificata
tempo nella condizione e restituisce TRUE o FALSE
in base all'operatore.Esempio di utilizzo: app.firstOpenTimestamp >= ('2022-10-31T14:37:47', 'America/Los_Angeles') .
Per specificare un intervallo: app.firstOpenTimestamp >= ('2022-11-01T00:00:00') && app.firstOpenTimestamp < ('2022-12-01T00:00:00')
Se non viene specificato alcun fuso orario, viene utilizzato il fuso orario GMT.
|
app.userProperty |
< , <= , == e !=
>= > |
Restituisce TRUE se la proprietà utente effettiva confronta numericamente
al valore specificato in modo che corrisponda a quello dell'operatore. |
app.userProperty |
.contains([...]) |
Restituisce TRUE se uno dei valori target è una sottostringa di
la proprietà utente effettiva. |
app.userProperty |
.notContains([...]) |
Restituisce TRUE se nessuno dei valori target è una sottostringa della proprietà utente effettiva. |
app.userProperty |
.exactlyMatches([...]) |
Restituisce TRUE se la proprietà utente effettiva corrisponde esattamente a
(sensibile alle maiuscole) uno dei valori target nell'elenco. |
app.userProperty |
.matches([...]) |
Restituisce TRUE se qualsiasi espressione regolare target nel
list corrisponde a una sottostringa di, o
l'intero valore effettivo. Per forzare la corrispondenza dell'intera stringa,
aggiungi "^" all'espressione regolare e il suffisso con "$". Impieghi
Sintassi RE2. |
app.id |
== |
Restituisce TRUE se il valore specificato corrisponde all'ID app dell'app. |
app.build |
< , <= , == e !=
>= > |
Restituisce TRUE se la build dell'app effettiva confronta numericamente
al valore specificato in modo che corrisponda a quello dell'operatore. |
app.build |
.contains([...]) |
Restituisce TRUE se uno dei valori target è una sottostringa della compilazione dell'app effettiva, ad esempio "a" e "bc" sono sottostringhe di "abc". |
app.build |
.notContains([...]) |
Restituisce TRUE se nessuno dei valori target è una sottostringa di
l'effettiva build dell'app. |
app.build |
.exactlyMatches([...]) |
Restituisce TRUE se la build dell'app effettiva corrisponde esattamente a
uno qualsiasi dei valori target nell'elenco. |
app.build |
.matches([...]) |
Restituisce TRUE se qualsiasi espressione regolare target nel
list corrisponde a una sottostringa del valore effettivo o all'intero valore. Per forzare la corrispondenza
dell'intera stringa, anteponi all'espressione regolare "^" e metti come suffisso "$". Utilizza la sintassi
RE2. |
app.version |
< , <= , == e !=
>= > |
Restituisce TRUE se la versione effettiva dell'app confronta numericamente
al valore specificato in modo che corrisponda a quello dell'operatore. |
app.version |
.contains([...]) |
Restituisce TRUE se uno dei valori target è una sottostringa di
la versione effettiva dell'app, ad esempio "a" e "bc" sono sottostringhe di
"abc". |
app.version |
.notContains([...]) |
Restituisce TRUE se nessuno dei valori target è una sottostringa di
la versione effettiva dell'app. |
app.version |
.exactlyMatches([...]) |
Restituisce TRUE se la versione effettiva dell'app corrisponde esattamente
uno qualsiasi dei valori target nell'elenco. |
app.version |
.matches([...]) |
Restituisce TRUE se qualsiasi espressione regolare target nell'elenco corrisponde a una sottostringa o all'intero valore effettivo. Per forzare la corrispondenza
dell'intera stringa, anteponi all'espressione regolare "^" e metti come suffisso "$". Utilizza la sintassi
RE2. |
app.operatingSystemAndVersion |
.inOne([...]) |
Restituisce TRUE se il sistema operativo e la versione corrispondono a uno qualsiasi dei
ai valori target nell'elenco.Ad esempio: app.operatingSystemAndVersion.inOne([operatingSystemName('Macintosh').version.==('10.15')]) |
app.browserAndVersion |
.inOne([...]) |
Restituisce TRUE se il browser e la versione corrisponde a uno dei
ai valori target nell'elenco.Ad esempio: app.browserAndVersion.inOne([browserName('Chrome').anyVersion]) |
app.firebaseInstallationId |
in [...] |
Restituisce TRUE se l'ID installazione corrisponde a uno di quelli specificati 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 di quelli specificati nell'elenco. Esempio di utilizzo: device.country in
['gb', 'us'] .
Il codice paese del dispositivo viene determinato utilizzando
l'indirizzo IP del dispositivo indicato 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 corrisponde al valore nel campo corrispondente all'operatore. |
percent |
<= , > , between |
Restituisce TRUE se il valore nel campo percent
viene confrontato con il valore assegnato in modo casuale corrispondente all'operatore.
Puoi specificare un seed per selezionarne uno nuovo assegnato in modo casuale di istanze di app per un determinato intervallo percentuale, come descritto in Regola condizione di classificazione. A questo scopo, fornisci il parametro nome del seed prima dell'operatore, come nell'esempio seguente: percent('keyName') <= 10 Per configurare un intervallo specifico, puoi utilizzare percent between 20 and 60 Per configurare un intervallo di utenti compreso tra 60 e 80 utilizzando un seed personalizzato: percent('seedName') between 60 and 80 |