Test dell'implementazione di Audience Network

Se integri Audience Network di Facebook nella tua app o nel tuo sito Web mobile, devi testare l'implementazione su dispositivi reali con inserzioni reali prima di passare alla fase di produzione. Assicurati di usare gli SDK di Audience Network più recenti nella tua integrazione per includere le risoluzioni di bug e i miglioramenti più recenti. Le sezioni seguenti forniscono istruzioni su come eseguire il test dell'app e del sito Web.

Quando sono in esecuzione su un simulatore per iOS o per Android, le inserzioni di prova possono essere mostrate abilitando la modalità test e specificando l'ID con hash del dispositivo. Si tratta di un primo passaggio ottimale per il test dell'implementazione. Inoltre, ti consigliamo di eseguire i test su dispositivi reali con inserzioni reali, seguendo le istruzioni indicate qui sotto.

1. Test con inserzioni reali

2. Codici di errore di richieste di inserzioni reali

3. Test con inserzioni di prova

Test delle richieste con lo strumento Debugger delle richieste di Audience Network

Dopo aver implementato i posizionamenti nella tua app, puoi usare lo strumento Debugger delle richieste di Audience Network per verificare che Facebook stia ricevendo le richieste dall'app.

Nella sezione Audience Network della dashboard per gli sviluppatori: https://developers.facebook.com/apps/<your_app_id>/audience-network/

Accedi alla sezione "App" nel pannello di sinistra sotto "Audience Network" e scorri verso il basso fino a "Debugger delle richieste di Audience Network". Clicca sul pulsante Start e lo strumento inizierà a monitorare le tue richieste dall'app.

Sul dispositivo di prova, iOS o Android, naviga nell'app per attivare i posizionamenti pubblicitari di Audience Network e le richieste di inserzione verranno mostrate nello strumento. Verifica che le richieste vengano inviate con il corretto ID posizionamento, nome del pacchetto del bundle, ecc.

È richiesto un dispositivo fisico e non un simulatore iOS o un emulatore Android.

Devi aver effettuato l'accesso all'app Facebook sullo stesso dispositivo di prova che usi affinché lo strumento esegua il monitoraggio.

Se le richieste di inserzione non vengono mostrate nello strumento, Facebook non sta ricevendo le richieste come previsto. Puoi verificare gli elementi seguenti per il debug:

  1. Assicurati di usare un dispositivo fisico e non un simulatore/emulatore.
  2. Assicurati che l'app Facebook sia installata sul dispositivo di prova.
  3. Assicurati di aver effettuato l'accesso a Facebook sul dispositivo di prova con un utente amministratore, sviluppatore o tester dell'app Audience Network di Facebook.
  4. Se usi una mediazione, assicurati che il livello di mediazione invii richieste a Audience Network di Facebook.

Test con inserzioni reali

I test con inserzioni reali prevedono due passaggi. Il primo consiste nell'aggiungere i tester alle impostazioni dell'app per consentire loro di vedere inserzioni reali prima dell'approvazione dell'app stessa. Il secondo passaggio è rivolto ai tester, affinché possano usare l'app o il sito Web mobile dopo aver effettuato l'accesso a Facebook. Ecco come eseguire entrambi i passaggi nel dettaglio.

Aggiunta dei tester all'app

Puoi testare la tua app o il tuo sito Web mobile su dispositivi reali con inserzioni reali assicurandoti che l'utente responsabile del test venga aggiunto all'app Facebook con qualsiasi ruolo. Si tratta del metodo consigliato per l'aggiunta di tester all'app:

  1. Accedi alla dashboard della tua app e clicca sulla tab Ruoli a sinistra.
  2. Nella sezione Tester, clicca sul pulsante Aggiungi Tester. Gli utenti possono anche avere il ruolo di amministratore o sviluppatore. Consigliamo il ruolo di tester per gli utenti che devono eseguire il test dell'app o del sito Web ma che non sono autorizzati a visualizzarne le impostazioni su Facebook.
  3. Digita il nome, l'ID Facebook o il nome utente del tester da aggiungere e clicca su Invia. Qui puoi inserire più utenti.
  4. A questo punto, dovresti vedere gli utenti inseriti come tester.

Se stai usando livelli di mediazione, assicurati che il livello di mediazione invii richieste a Audience Network. Se i test sono abilitati sul livello di mediazione, questo potrebbe non inviare altre richieste ai nostri server.

Test delle app mobili

  1. Distribuisci l'app ai dispositivi dei tester usando il metodo di distribuzione che preferisci.
  2. Ognuno dei tester aggiunti deve aver installato l'app Facebook nel proprio dispositivo e deve aver effettuato l'accesso tramite l'ID utente Facebook aggiunto al ruolo di tester. Si tratta di un requisito obbligatorio, dal momento che Facebook deve poter riconoscere l'utente come tester nell'app, al fine di restituire un'inserzione indipendentemente dallo stato del processo di analisi dell'app stessa.
  3. A questo punto, il tester può avviare l'app ed eseguire i passaggi necessari per attivare i posizionamenti da testare. Dovrebbe essere visibile un'inserzione reale.

Durante i test dei posizionamenti pubblicitari, Facebook invia intenzionalmente un'istruzione no-fill per circa il 20% delle richieste, per consentirti di testare il modo in cui l'app o il sito Web mobile gestisce i casi in cui non vi sia alcun riempimento.

Codici di errore di richieste di inserzioni reali

Durante il test dell'implementazione di Audience Network di Facebook, potresti visualizzare uno dei vari codici di errore possibili quando esegui una richiesta. Tali codici di errore sono descritti qui sotto.

1000 - Network Error

Risposta del server Documentazione dell'SDK

Code=1000 “Network Error"

  • Error 1000 - Network Error. L'SDK di Audience Network non riesce a raggiungere facebook.com (http://facebook.com/).
  • L'app deve provare a eseguire un'altra richiesta finché la rete non torna raggiungibile. Consigliamo di eseguire richieste incrementali fino al ripristino della connessione, in caso contrario dichiara un timeout.

1001 - No Fill

Si tratta di un errore comune durante i test e si riferisce a una risposta "No Fill". Il motivo più comune di tale errore è il fatto che l'utente non ha effettuato l'accesso all'app Facebook durante il test dell'app mobile o non ha effettuato l'accesso al sito Web mobile Facebook durante il test del sito Web mobile.

Risposta del server Documentazione dell'SDK

Code=1001 “No Fill”

  • Error 1001 - No Fill. Può essere causato da uno o più motivi tra quelli seguenti:
  • L'utente non ha effettuato l'accesso all'app Facebook nativa sul dispositivo mobile.
  • L'opzione "Limita raccolta dati pubblicitari" è attiva (iOS).
  • L'opzione "Disattiva annunci personalizzati" è attiva (Android).
  • Nessun inventario pubblicitario per l'utente attuale.
  • L'app Facebook nativa deve essere installata nel dispositivo in cui viene eseguito il test.
  • L'app deve provare a eseguire un'altra richiesta dopo 30 secondi.

1002 - Ad Load Too Frequently

Risposta del server Documentazione dell'SDK

Code=1002 “Load Too Frequently”

  • Le richieste di inserzioni si basano su un insieme di:
  • ID dispositivo
  • ID posizionamento
  • Formato di visualizzazione (banner, interstitial, nativa)
  • L'app deve provare a eseguire un'altra richiesta dopo 30 minuti. Consigliamo anche di modificare la frequenza di aggiornamento e delle richieste.

1203 - Not An App Admin, Developer or Tester

Risposta del server Documentazione dell'SDK

Code=1203 “Not An App Admin, Developer or Tester”

  • La richiesta iniziale da un bundle deve provenire da un amministratore, sviluppatore o tester dell'app.

2000 - Server Error

Risposta del server Documentazione dell'SDK

Code=2000 “Server Error"

  • Error 2000 - Server Error. I possibili motivi sono:
  • ID posizionamento non valido: ogni posizionamento e ogni tipo presentano un ID univoco.
  • Versione dell'SDK non supportata o non aggiornata: scarica la versione più recente o aggiorna il Pod se usi Cocoa Pods.
  • Chiamata o uso improprio del metodo loadAd. Ti consigliamo di inserire punti di interruzione in loadAd e in tutti i metodi/callback associati.
  • L'app deve provare a eseguire un'altra richiesta dopo 30 secondi.

2001 - Internal Error

Risposta del server Documentazione dell'SDK

Code=2001 “Internal Error”

  • Error 2001 - Internal Error. L'SDK di Audience Network non è stato in grado di elaborare una risposta da facebook.com.
  • L'app deve provare a eseguire un'altra richiesta dopo 30 secondi.
  • Se questa situazione si verifica costantemente, inviaci una segnalazione di bug.

Test con inserzioni di prova

Devi assicurarti che l'utente responsabile del test dell'app venga aggiunto a un ruolo nella dashboard della tua app su Facebook. Si tratta del metodo consigliato per i test, dal momento che ti consente di vedere inserzioni reali su dispositivi reali. Per maggiori informazioni sul metodo consigliato per i test, consulta la sezione Test con inserzioni reali.

Tuttavia, come indicato nella sezione precedente, potresti non riuscire sempre a testare l'aspetto delle inserzioni reali con le visualizzazioni dell'interfaccia utente dell'app. Inoltre, non puoi garantire che l'inserzione ricevuta dalla tua app sarà un'inserzione con immagine, un'inserzione video o un'inserzione carosello. La richiesta di inserzioni reali non rappresenterà una garanzia del contenuto e del formato dell'inserzione ricevuta. Cosa succede se desideri effettuare un test con un'inserzione che comprende contenuti video verticali per assicurarti che venga visualizzata correttamente nella visualizzazione dell'interfaccia utente dell'app?

A partire dalla versione dell'SDK di Audience Network 4.23, abbiamo introdotto una proprietà della classe denominata testAdType in FBAdSettings nell'SDK per iOS e AdSettings nell'SDK per Android. La sezione seguente mostrerà l'implementazione della richiesta di inserzioni di prova usando gli SDK per iOS e Android.

Uso delle inserzioni di prova su iOS

Quando usi TestFlight per distribuire e testare la tua app, non puoi vedere inserzioni reali nelle versioni di prova. Dovrai invece impostare la modalità test come indicato di seguito per ottenere inserzioni da Audience Network. Ogni volta che un'app distribuita da TestFlight richiede l'identificatore per gli inserzionisti (IDFA), otterrà un IDFA diverso. Normalmente, l'IDFA rimane costante per un dispositivo fino alla reimpostazione manuale da parte di un utente. Tuttavia, quando una build di TestFlight richiede l'IDFA dal sistema operativo, non ottiene l'IDFA "reale". Riceve invece un IDFA "fittizio" che cambia ogni volta che l'app lo richiede.

Per risolvere questo problema, puoi attivare la modalità test per consentire la visualizzazione dell'inserzione di prova.

Prima di caricare un'inserzione nella tua app per iOS, aggiungi la riga di codice seguente:

#ifdef DEBUG
[FBAdSettings setLogLevel:FBAdLogLevelLog];
[FBAdSettings addTestDevice:@"HASHED_ID"];
#endif

Dovresti vedere il messaggio di registro seguente:

[FBAudienceNetworkLog/FBAdSettings:94] 
When testing your app with Facebook ad units,  
you must specify the device hashed ID to ensure the delivery of test ads, 
add the following code before loading an ad: `[FBAdSettings addTestDevice:@"HASHED_ID"]`
Test mode device hash: bd675f960298a92003630d76fa612b1706b745ab

Sostituisci HASHED_ID con l'hash del dispositivo in modalità di prova visualizzato nel registro precedente.

Non devi mai inviare la tua app al pubblico con il codice di prova riportato sopra perché provocherà la visualizzazione delle sole inserzioni di prova. Devi invece usare una macro per preprocessore, ad esempio DEBUG o TESTING, quindi usare #ifdef per distinguere una versione di prova da una versione di rilascio.

Chiama il metodo seguente per richiedere un'inserzione che contenga una visualizzazione dell'immagine e un invito all'azione per l'installazione dell'app. Puoi verificare altri tipi di inserzioni di prova che ti consentiranno di testare inserzioni con contenuti e formati diversi nella prossima sezione.

FBAdSettings.testAdType = FBAdTestAdType_Img_16_9_App_Install; 

Una volta terminato il test, devi cancellare l'impostazione del dispositivo di prova usando questa riga di codice:

[FBAdSettings clearTestDevice:[FBAdSettings testDeviceHash]]; 

Scopri i nostri esempi di codice che mostrano come richiedere tipi di inserzioni di prova. L'SDK include NativeAdSample, che puoi trovare sotto la cartella FBAudienceNetwork/samples. Apri il progetto con Xcode ed eseguilo su un dispositivo o sul simulatore.

  1. Tocca l'icona a forma di ingranaggio per aprire il controller delle Impostazioni, attiva il pulsante dell'interfaccia della modalità test e scegli il tipo di inserzione di prova dagli strumenti di selezione dell'interfaccia utente.

  2. Tocca il pulsante "Fine" per tornare indietro, quindi tocca il pulsante "Carica inserzione nativa" per richiedere un'inserzione di prova. Nel giro di pochi secondi visualizzerai un'inserzione con contenuti video verticali con l'invito all'azione "Installa subito", come mostrato di seguito:

Uso delle inserzioni di prova su Android

Durante i test su dispositivi Android reali, vedrai un messaggio simile a questo nel Logcat:

Log: Test mode device hash: HASHED_ID Log: When testing your app with Facebook's ad units you must specify the device hashed ID to ensure the delivery of test ads, add the following code before loading an ad: AdSettings.addTestDevice("HASHED ID");

Se non è possibile, puoi abilitare le inserzioni di prova in un dispositivo aggiungendo la riga di codice seguente prima di caricare un'inserzione:

AdSettings.addTestDevice("HASHED ID");

Per aggiungere più dispositivi di prova, crea un elenco di stringhe da aggiungere prima di caricare un'inserzione:

List<String> testDevices = new ArrayList<>();
testDevices.add("HASHED_ID_1");
testDevices.add("HASHED_ID_2");
AdSettings.addTestDevices(testDevices);

Chiama il metodo seguente per richiedere un'inserzione che contenga una visualizzazione dell'immagine e un invito all'azione per l'installazione dell'app. Puoi verificare altri tipi di inserzioni di prova che ti consentiranno di testare inserzioni con contenuti e formati diversi nella prossima sezione.

AdSettings.testAdType = IMG_16_9_APP_INSTALL; 

Tipi di inserzioni di prova

La tabella seguente mostra i diversi valori enum che puoi impostare per FBAdSettings.testAdType nell'SDK per iOS o AdSettings.testAdType nell'SDK per Android prima di richiedere un'inserzione di prova.

Tipi di inserzioni di prova (iOS) Tipi di inserzioni di prova (Android) Descrizione

FBAdTestAdType_Default

DEFAULT

Verrà restituito un tipo di inserzione casuale quando è attivata la modalità test.

FBAdTestAdType _Img_16_9_App_Install

IMG_16_9_APP_INSTALL

Inserzione con immagine 16 x 9 con opzione di invito all'azione per l'installazione dell'app

FBAdTestAdType _Img_16_9_Link

IMG_16_9_LINK

Inserzione con immagine 16 x 9 con opzione di invito all'azione con link

FBAdTestAdType _Vid_HD_16_9_46s_App_Install

VIDEO_HD_16_9_46S_APP_INSTALL

Inserzione video HD 16 x 9 da 46 secondi con opzione di invito all'azione per l'installazione dell'app

FBAdTestAdType _Vid_HD_16_9_46s_Link

VIDEO_HD_16_9_46S_LINK

Inserzione video HD 16 x 9 da 46 secondi con opzione di invito all'azione con link

FBAdTestAdType _Vid_HD_16_9_15s_App_Install

VIDEO_HD_16_9_15S_APP_INSTALL

Inserzione video HD 16 x 9 da 15 secondi con opzione di invito all'azione per l'installazione dell'app

FBAdTestAdType _Vid_HD_16_9_15s_Link

VIDEO_HD_16_9_15S_LINK

Inserzione video HD 16 x 9 da 15 secondi con opzione di invito all'azione con link

FBAdTestAdType _Vid_HD_9_16_39s_App_Install

VIDEO_HD_9_16_39S_APP_INSTALL

Inserzione video HD 9 x 16 da 39 secondi con opzione di invito all'azione per l'installazione dell'app

FBAdTestAdType _Vid_HD_9_16_39s_Link

VIDEO_HD_9_16_39S_LINK

Inserzione video HD 9 x 16 da 39 secondi con opzione di invito all'azione con link

FBAdTestAdType _Carousel_Img_Square _App_Install

CAROUSEL_IMG_SQUARE_APP_INSTALL

Inserzione carosello con immagine quadrata e opzione di invito all'azione per l'installazione dell'app

FBAdTestAdType _Carousel_Img_Square_Link

CAROUSEL_IMG_SQUARE_LINK

Inserzione carosello con immagine quadrata e opzione di invito all'azione con link