Le proprietà utente descrivono i segmenti della base utenti, ad esempio la preferenza di lingua o una posizione geografica. Analytics registra automaticamente alcune proprietà utente. Se vuoi raccogliere altre proprietà, puoi impostare fino a 25 per progetto. Consulta Proprietà utente personalizzate per scoprire come impostare e registrare le proprietà utente.
Le proprietà utente migliorano la segmentazione degli utenti, ma spesso i dati delle proprietà utente sono la disponibilità sul lato server. Measurement Protocol consente di potenziare misurazioni lato client con dati lato server, cosa che in genere non è fattibile usando solo soluzioni lato client.
Nomi riservati
Alcuni nomi di proprietà utente sono riservati e non possono essere utilizzati nelle misurazioni:
- first_open_time
- first_visit_time
- last_deep_link_referrer
- user_id
- first_open_after_install
Inoltre, i nomi delle proprietà utente non possono iniziare con:
- google_
- ga_
- firebase_
Esempio di utilizzo
Nell'esempio seguente, il tuo CRM ha una proprietà utente (customer_tier) che
che vorresti aggiungere alle tue misurazioni. customer_tier può essere impostato su uno dei seguenti valori:
premium o standard. Per includere questa proprietà utente nei report, procedi nel seguente modo:
le seguenti:
Innanzitutto, chiedi al cliente di inviare un evento add_payment_info insieme a una chiamata a un
API server che ha accesso al tuo sistema CRM:
codice client
FirebaseAnalytics.logEvent("add_payment_info")
ServerAPI.addCustomerTier(
  FirebaseAnalytics.getAppInstanceId(),
  "[{name: \"add_payment_info\"}"]
);
Il server aumenta poi la misurazione con la proprietà utente customer_tier
usando Measurement Protocol:
codice del server
const firebaseAppId = "FIREBASE_APP_ID";
const apiSecret = "API_SECRET";
function addCustomerTier(appInstanceId, events) {
  // Request the customer tier from the CRM.
  const customerTier = getCustomerTier(appInstanceId);
  const queryParams = `?firebase_app_id=${firebaseAppId}&api_secret=${apiSecret}`;
  fetch(`https://www.google-analytics.com/mp/collect${queryParams}`, {
    method: "POST",
    body: JSON.stringify({
      "app_instance_id": "APP_INSTANCE_ID",
      "user_properties": {
        "customer_tier": {
          "value": "CUSTOMER_TIER"
        }
      },
      "events": JSON.parse(events)
    })
  });
}
Questa proprietà utente segnala i due segmenti premium e standard.
Consulta la sezione Invio di eventi per i dettagli completi su come inviare eventi utilizzando Measurement Protocol.
Timestamp override
Measurement Protocol utilizza il primo timestamp che trova nei seguenti per ogni proprietà utente nella richiesta:
- Il timestamp_microsdella voce inuser_properties.
- Il timestamp_microsdella richiesta.
- L'ora in cui Measurement Protocol riceve la richiesta.
L'esempio seguente invia un timestamp a livello di richiesta che si applica a tutti
le proprietà utente nella richiesta. Di conseguenza, Measurement Protocol assegna
per entrambe le proprietà utente customer_tier e customer_group il timestamp
requestUnixEpochTimeInMicros.
{
  "timestamp_micros": requestUnixEpochTimeInMicros,
  "user_properties": {
      "customer_tier": {
        "value": customerTierValue
      },
      "customer_group": {
        "value": customerGroupValue
      }
  }
}
L'esempio seguente invia sia un timestamp a livello di richiesta sia un timestamp per
la proprietà utente customer_tier. Di conseguenza, Measurement Protocol assegna
customer_tier, il timestamp di customerTierUnixEpochTimeInMicros, mentre
customer_group un timestamp di requestUnixEpochTimeInMicros.
"timestamp_micros": requestUnixEpochTimeInMicros,
"user_properties": {
    "customer_tier": {
      "value": customerTierValue,
      "timestamp_micros": customerTierUnixEpochTimeInMicros
    },
    "customer_group": {
      "value": customerGroupValue
    }
}