Annunci rich media per cellulari

L'SDK Google Mobile Ads dispone ora del supporto beta per MRAID v3, basato sul supporto esistente per MRAID v2, e consente agli inserzionisti di pubblicare creatività MRAID v3 per i publisher di Ad Manager. Questa guida chiarisce i dettagli dell'implementazione di MRAID che non erano chiari e su cui è possibile interpretare nella specifica MRAID v3. Il pubblico di destinazione è costituito dagli autori di creatività MRAID v3.

Prerequisiti

I publisher devono pubblicare:

  • Google Play Services 15.0.0 o versioni successive per MRAID v3
  • Google Play Services 7.8 o versione successiva per MRAID v2

Primer utili

Se non conosci MRAID, puoi trovare ulteriori informazioni nella pagina MRAID dello IAB. Puoi anche scaricare il documento MRAID v3 Definitions, che fornisce informazioni dettagliate su tutti i parametri descritti di seguito, nonché il post del blog di IAB su MRAID v3.

Dettagli sull'implementazione di MRAID v3 (beta)

Evento Visibilità - Modifica esposizione

Questo evento è supportato. Ti consigliamo di utilizzare un listener per il nuovo evento exposureChange anziché per l'evento viewableChange deprecato. Anche il metodo mraid.isViewable() è obsoleto. Tuttavia, questi metodi deprecati continuano a essere supportati per mantenere la compatibilità con le versioni precedenti.

La definizione dell'evento exposureChange viene inviata ogni volta che la visualizzazione dell'annuncio cambia. L'SDK ha un meccanismo di polling per evitare di generare troppi eventi. Lo stato iniziale viene inviato in modo asincrono dopo che l'annuncio ha registrato un listener. Il callback include il parametro exposed_percentage, che è un numero in virgola mobile compreso tra 0.0 e 100.0.

Per esempi di utilizzo, consulta la specifica MRAID v3.

Rilevamento e inizializzazione di MRAID e attributi MRAID_ENV

L'SDK è conforme al protocollo di inizializzazione definito nella specifica MRAID v3.

Nell'oggetto MRAID_ENV, l'SDK non invia IDFA, limitAdTracking, ID app o COPPA (facoltativi). Fornisce tutte le variabili richieste nell'oggetto MRAID_ENV, inclusi la versione MRAID, il nome dell'SDK e la versione dell'SDK.

Misurazione dell'udibilità

Viene introdotto un nuovo evento (audioVolumeChange) per identificare se l'audio può essere ascoltato e quando il volume cambia.

L'evento audioVolumeChange ha un singolo parametro: volume_percentage. Il valore è la percentuale del volume massimo della riproduzione audio. Si tratta di un numero in virgola mobile compreso tra 0.0 e 100.0 (0.0 quando la riproduzione non è consentita) oppure null se non è possibile determinare il volume.

Per esempi di utilizzo, consulta la specifica MRAID v3.

mraid.getLocation()

Poiché mraid.getLocation() non è supportato, restituisce sempre -1.

mraid.unload()

Questo metodo può essere chiamato in qualsiasi momento e l'SDK reagisce ignorando l'annuncio, concedendo la distribuzione delle risorse e quindi rimuovendo il componente WebView o sostituendolo con un altro documento o un nuovo annuncio.

Quando la creatività chiama unload(), il livello nativo risponde come segue per i diversi tipi di creatività:

Tipo Comportamento unload()
Banner Effettuare una nuova richiesta di annuncio con gli stessi parametri di richiesta dell'annuncio corrente.
Interstitial Chiudi l'interstitial.

VPAID (Video Player-Ad Interface Definition)

L'SDK Google Mobile Ads non supporta VPAID. mraid.supports('vpaid') restituisce false.

mraid.useCustomClose()

mraid.useCustomClose() potrebbe non essere supportato, a seconda del formato e del tipo di creatività.

Dettagli sull'implementazione di MRAID v2

mraid.getVersion()

mraid.getVersion() non restituisce 2.0 finché la creatività non è stata caricata. Non controllare la versione MRAID mentre mraid.getState() restituisce loading.

mraid.resize()

Quando viene chiamato mraid.resize(), il banner originale viene sostituito con l'immagine screenshot del banner. Ciò si verifica se l'annuncio ridimensionato non copre lo spazio pubblicitario originale.

Inoltre, gli annunci ridimensionati non seguono il frame originale del banner. Se un banner viene posizionato in una visualizzazione a scorrimento, l'annuncio ridimensionato non scorre con il banner.

mraid.setResizeProperties()

Tutte le chiamate al numero mraid.setResizeProperties() devono contenere un elenco completo delle proprietà obbligatorie. Se le proprietà di ridimensionamento non sono valide, verranno ripristinate i valori predefiniti e tutte le chiamate successive a mraid.resize() non riusciranno fino a quando mraid.setResizeProperties() non verrà richiamato con parametri validi.

mraid.getMaxSize()

mraid.getMaxSize() deve essere utilizzato solo per determinare la dimensione massima degli annunci ridimensionati. Per determinare le dimensioni di un annuncio espandibile, utilizza mraid.getScreenSize().

mraid.setOrientationProperties()

Quando chiami mraid.setOrientationProperties() con la proprietà allowOrientationChange impostata su true, la configurazione della proprietà forceOrientation non comporta alcuna operazione. Le creatività che vogliono forzare l'orientamento devono impostare allowOrientationChange su false.

mraid.isViewable()

Se una visualizzazione copre un annuncio altrimenti visibile, mraid.isViewable() tornerà comunque true. I contenuti dell'app non devono coprire gli annunci visibili.

mraid.getCurrentPosition()

Mentre un annuncio espandibile in due elementi è nello stato espanso, una chiamata a mraid.getCurrentPosition() nel primo elemento restituirà le dimensioni dello schermo.

mraid.storePicture()

Affinché un'app supporti mraid.storePicture(), deve includere l'autorizzazione android.permission.WRITE_EXTERNAL_STORAGE.