Guida introduttiva ad App Events (Android)

Questa guida mostra come aggiungere App Events alla tua app nuova o esistente integrando l'SDK di Facebook e registrando gli eventi.

Aggiunta di eventi nell'app

Dopo aver integrato l'SDK di Facebook, alcuni eventi nell'app vengono registrati e raccolti automaticamente per Gestione eventi, a meno che tu non disabiliti la registrazione automatica degli eventi nell'app. Puoi modificare questa scelta nel codice della tua app o tramite un pulsante di attivazione/disattivazione in Eventi nell'app nella Dashboard gestione app o in Gestione eventi. Tieni presente che in caso di conflitti di valori tra il flag AutoLogAppEventsEnabled e il pulsante di attivazione/disattivazione, sarà seguito il valore nel pulsante "Registrazione automatica degli eventi per l'SDK di Facebook". Per maggiori dettagli sul tipo di informazioni raccolte e su come disabilitare la registrazione automatica degli eventi nell'app, consulta Registrazione automatica degli eventi nell'app.

Esistono tre modi per monitorare gli eventi nell'app:

Eventi registrati automaticamente

Quando usi l'SDK di Facebook, determinati eventi nella tua app vengono registrati e raccolti automaticamente per Facebook a meno che non disabiliti la registrazione automatica degli eventi. Questi eventi sono pertinenti per tutti i casi d'uso: targetizzazione, misurazione e ottimizzazione. Sono tre gli eventi chiave raccolti come parte della registrazione automatica degli eventi nell'app: Installazione dell'app, Avvio dell'app e Acquisto. Quando la registrazione automatica è abilitata, gli inserzionisti possono disabilitare questi eventi nonché altri eventi interni di Facebook come quelli delle impression relative all'accesso. Tuttavia, se hai disabilitato la registrazione automatica ma vuoi comunque registrare eventi specifici, come gli eventi di installazione o acquisto, implementa manualmente la registrazione per questi eventi nella tua app.

EventoDettagli

Installazione dell'app

La prima volta che una nuova persona attiva l'app o il primo avvio dell'app su un particolare dispositivo.

Avvio dell'app

Quando una persona avvia la tua app, l'SDK di Facebook viene inizializzato e l'evento viene registrato. Tuttavia, se si verifica un secondo evento di avvio dell'app entro 60 secondi dal primo, il secondo evento non viene registrato.

Per l'SDK di Facebook per Android 4.18 e versioni precedenti, l'inizializzazione dell'SDK è un processo manuale diverso da quello relativo alla registrazione manuale degli eventi descritto in questo documento. Effettua l'aggiornamento alla versione dell'SDK più recente o scorri fino alla sezione Inizializzazione di SDK precedenti per aggiungere gli eventi manualmente.

Acquisto in-app

Quando viene completato un acquisto elaborato da Google Play. Se usi altre piattaforme di pagamento, aggiungi manualmente il codice dell'evento di acquisto.

La registrazione degli acquisti in-app è abilitata automaticamente per le app su cui è stata installata la versione 4.39 o che hanno effettuato l'aggiornamento a tale versione. Per le app che eseguono una versione precedente, abilita gli eventi di acquisto in-app nella scheda Di base > Impostazioni Android nella Dashboard gestione app o aggiungi manualmente il codice dell'evento di acquisto.

L'SDK per Android al momento supporta la libreria Google Play Billing v2 e v3. Per la libreria Google Play Billing v4 devi registrare manualmente gli eventi di acquisto in-app.

Report di interruzione dell'SDK di Facebook

(A uso esclusivo di Facebook)

Se l'app si arresta in modo anomalo a causa dell'SDK di Facebook, viene generato un report di interruzione e inviato a Facebook al riavvio dell'app. Questo report non contiene dati degli utenti e aiuta Facebook a garantire la qualità e la stabilità dell'SDK. Per disabilitare la registrazione di questo evento, disabilita gli eventi registrati automaticamente.

Report ANR dell'SDK di Facebook

(A uso esclusivo di Facebook)

Se l'app smette di rispondere (ANR, Application Not Responding) a causa dell'SDK di Facebook, viene generato un report ANR e inviato a Facebook al riavvio dell'app. Questo report non contiene dati degli utenti e aiuta Facebook a garantire la qualità e la stabilità dell'SDK. Per disattivare la registrazione di questo evento, disabilita gli eventi registrati automaticamente.

Disabilitare gli eventi registrati automaticamente

Per disabilitare gli eventi registrati automaticamente, aggiungi quanto segue al file AndroidManifest.xml:

<application>
  ...
  <meta-data android:name="com.facebook.sdk.AutoLogAppEventsEnabled"
           android:value="false"/>
  ...
</application>

In alcuni casi, è consigliabile ritardare la raccolta di eventi registrati automaticamente, ad esempio per ottenere il consenso dell'utente o adempiere a obblighi legali, invece di disabilitarla. In questo caso, chiama il metodo setAutoLogAppEventsEnabled() della classe FacebookSDK e impostalo su true per abilitare nuovamente la registrazione degli eventi dopo aver ottenuto il consenso dell'utente finale.

setAutoLogAppEventsEnabled(true);

Per sospendere di nuovo la raccolta per qualsiasi motivo, imposta il metodo setAutoLogAppEventsEnabled() su false.

setAutoLogAppEventsEnabled(false);

Puoi anche disabilitare la registrazione automatica degli eventi di acquisto in-app usando la Dashboard gestione app. Vai alla scheda Android in Di base > Impostazioni e porta lo switch su No.

Disabilitare l'inizializzazione automatica dell'SDK

Per disabilitare l'inizializzazione automatica dell'SDK, aggiungi quanto segue al file AndroidManifest.xml:

<application>
  ...
  <meta-data android:name="com.facebook.sdk.AutoInitEnabled"
           android:value="false"/>
  ...
</application>

In alcuni casi, è consigliabile ritardare l'inizializzazione dell'SDK, ad esempio per ottenere il consenso dell'utente o adempiere a obblighi legali, invece di disabilitarla. In questo caso, chiama il metodo della classe setAutoInitEnabled e impostalo su true per inizializzare manualmente l'SDK dopo aver ottenuto il consenso dell'utente finale.

FacebookSdk.setAutoInitEnabled(true)
FacebookSdk.fullyInitialize()

Disabilitare la raccolta degli ID inserzionista

Per disabilitare la raccolta di advertiser-id, aggiungi quanto segue al file AndroidManifest.xml:

<application>
  ...
  <meta-data android:name="com.facebook.sdk.AdvertiserIDCollectionEnabled"
           android:value="false"/>
  ...
</application>

In alcuni casi, è consigliabile ritardare la raccolta di advertiser_id, ad esempio per ottenere il consenso dell'utente o adempiere a obblighi legali, invece di disabilitarla. In questo caso, chiama il metodo setAdvertiserIDCollectionEnabled() della classe FacebookSDK e impostalo su true per riabilitare la raccolta di advertiser_id dopo aver ottenuto il consenso dell'utente finale.

setAdvertiserIDCollectionEnabled(true);

Per sospendere la raccolta per qualsiasi motivo, imposta il metodo setAdvertiserIDCollectionEnabled() su false.

setAdvertiserIDCollectionEnabled(false);

Registrare manualmente gli eventi

Crea un oggetto AppEventsLogger usando il metodo dello strumento di assistenza per registrare gli eventi, dove this è l'Activity in cui si trova il tuo metodo.

AppEventsLogger logger = AppEventsLogger.newLogger(this);

Puoi quindi registrare l'evento su logger, dove AppEventConstants.EVENT_NAME_X è una delle costanti mostrata nella tabella Eventi standard o dal codice del Generatore di codici.

logger.logEvent(AppEventsConstants.EVENT_NAME_X);

Puoi inoltre specificare una serie di parametri in un Bundle e una proprietà valueToSum, ovvero un numero a caso che può rappresentare qualsiasi valore (ad es. un prezzo o una quantità). Quando riportate, tutte le proprietà valueToSum vengono sommate. Ad esempio, se 10 utenti hanno acquistato un articolo e il costo di ogni articolo era di 10 $ (e tale valore viene passato in valueToSum), tutti i costi vengono sommati per restituire un valore di 100 $.

Nota: valueToSum e parameters sono entrambi facoltativi.

Bundle params = new Bundle();
params.putString(AppEventsConstants.EVENT_PARAM_CURRENCY, "USD");
params.putString(AppEventsConstants.EVENT_PARAM_CONTENT_TYPE, "product");
params.putString(AppEventsConstants.EVENT_PARAM_CONTENT, "[{\"id\": \"1234\", \"quantity\": 2}, {\"id\": \"5678\", \"quantity\": 1}]");

logger.logEvent(AppEventsConstants.EVENT_NAME_PURCHASE,
                54.23,
                params);
Bundle params = new Bundle();
params.putString(AppEventsConstants.EVENT_PARAM_CURRENCY, "USD");
params.putString(AppEventsConstants.EVENT_PARAM_CONTENT_TYPE, "product");
params.putString(AppEventsConstants.EVENT_PARAM_CONTENT_ID, "HDFU-8452");

logger.logEvent(AppEventsConstants.EVENT_NAME_ADDED_TO_CART,
                54.23,
                params);

Per registrare un evento personalizzato, passa il nome dell'evento come stringa. Questa funzione presuppone che il logger sia un'istanza di AppEventsLogger creato usando la chiamata AppEventsLogger.newLogger().

public void logBattleTheMonsterEvent () {
    logger.logEvent("BattleTheMonster");
}

Parametri degli eventi

Ogni evento può essere registrato con un valueToSum e una serie di massimo 25 parametri. I parametri sono passati tramite un Bundle in cui la chiave contiene il nome del parametro e il valore o una String o un int. Se fornisci un altro tipo di valore che non risulta conforme, come un boolean, l'SDK registra un avviso su LogginBehavior.APP_EVENT.

Per i parametri usati generalmente con gli eventi standard, consulta la guida al riferimento dei parametri degli eventi standard. Questi parametri sono orientativi; puoi anche fornirne di tuoi. L'app deve registrare i parametri per i quali desideri vedere dettagli negli insight.

Non usare "event" come nome di un parametro. I parametri personalizzati con il nome "event" non saranno registrati. Usa un altro nome o aggiungi un prefisso o un suffisso al nome, come my_custom_event.

Test della registrazione degli eventi

Lo Strumento di assistenza sulle inserzioni sulle app ti consente di testare gli eventi nella tua app per accertarti che vengano inviati a Facebook.

  1. Apri lo Strumento di assistenza sulle inserzioni per le app.
  2. In Seleziona un'app, scegli la tua app e seleziona Invia.
  3. Nella parte inferiore, seleziona Testa App Events.
  4. Avvia la tua app e invia un evento. L'evento viene visualizzato nella pagina web.

Abilitazione dei registri di debug

Abilita i registri di debug per verificare l'utilizzo di App Events lato client. I registri di debug contengono richieste dettagliate e risposte JSON. Abilita i registri di debug aggiungendo il codice seguente dopo aver inizializzato l'SDK di Facebook per Android:

FacebookSdk.setIsDebugEnabled(true);
FacebookSdk.addLoggingBehavior(LoggingBehavior.APP_EVENTS);

Questo è solo a scopo di debug. Disabilita i registri di debug prima di distribuire l'app a tutti.

Scopri di più

Per maggiori informazioni e suggerimenti utili su App Events, consulta:

Esempi di app

Abbiamo creato alcuni esempi per diversi tipi di app per mostrarti come puoi utilizzare gli eventi nell'app. Ciascuno degli esempi di app fornisce tutti i dettagli dei vari eventi con relativi esempi di codice. È importante notare che questi esempi sono un punto di partenza per la tua app e devono essere personalizzati da te.