Le visualizzazioni banner sono annunci di testo o illustrati rettangolari che occupano un punto sullo schermo. Rimangono sullo schermo durante l'interazione degli utenti con l'app e possono aggiornarsi automaticamente dopo un determinato periodo di tempo. Se non hai mai utilizzato la pubblicità mobile, sono un ottimo punto di partenza.
Questa guida mostra come integrare le visualizzazioni banner in un'app Unity. Oltre a snippet di codice e istruzioni, include anche informazioni sul dimensionamento corretto dei banner e link a risorse aggiuntive.
Prerequisiti
Prima di continuare, configura Google Mobile Ads Unity Plugin.
Esegui sempre i test con gli annunci di prova
Il seguente codice campione contiene un ID unità pubblicitaria che puoi utilizzare per richiedere annunci di prova. È stato configurato appositamente per restituire annunci di prova anziché annunci di produzione per ogni richiesta, il che lo rende sicuro da utilizzare.
Tuttavia, dopo aver registrato un'app nell'interfaccia web di Ad Manager e aver creato i tuoi ID unità pubblicitaria da utilizzare nell'app, configura esplicitamente il tuo dispositivo come dispositivo di test durante lo sviluppo.
/21775744923/example/interstitial
Inizializza Google Mobile Ads Unity Plugin
Prima di caricare gli annunci, inizializza Google Mobile Ads Unity Plugin nell'app chiamando
MobileAds.Initialize(). Questa operazione deve essere eseguita una sola volta, idealmente al lancio dell'app.
using GoogleMobileAds;
using GoogleMobileAds.Api;
public class GoogleMobileAdsDemoScript : MonoBehaviour
{
public void Start()
{
// Initialize Google Mobile Ads Unity Plugin.
MobileAds.Initialize((InitializationStatus initStatus) =>
{
// This callback is called once the MobileAds SDK is initialized.
});
}
}
Se utilizzi la mediazione, attendi che venga eseguito il callback prima di caricare gli annunci, in modo da assicurarti che tutti gli adattatori di mediazione siano inizializzati.
Esempio di BannerView
Il seguente codice campione mostra come utilizzare la visualizzazione banner. Nell'esempio, crea un'istanza di una visualizzazione banner, utilizza un AdManagerAdRequest per caricare un annuncio nella visualizzazione banner, quindi estendi le sue funzionalità gestendo gli eventi del ciclo di vita.
Crea una visualizzazione banner
Il primo passaggio per utilizzare una visualizzazione banner consiste nel creare un'istanza di una visualizzazione banner.
Sostituisci AD_UNIT_ID con l'ID unità pubblicitaria.
Il costruttore di un AdManagerBannerView ha i seguenti parametri:
adUnitId: l'ID unità pubblicitaria dell'annuncio banner da caricare.AdSize: le dimensioni del banner che vuoi utilizzare.AdPosition: la posizione in cui devono essere posizionate le visualizzazioni banner.
(Facoltativo) Crea una visualizzazione banner con una posizione personalizzata
Per un maggiore controllo sulla posizione di una visualizzazione banner sullo schermo rispetto a quella offerta dai valori AdPosition, utilizza il costruttore che ha le coordinate x e y come parametri:
L'angolo in alto a sinistra della visualizzazione banner è posizionato in corrispondenza dei valori x e y passati al costruttore, dove l'origine è l'angolo in alto a sinistra dello schermo.
(Facoltativo) Crea una visualizzazione banner con dimensioni personalizzate
Oltre a utilizzare una costante AdSize, puoi anche specificare una dimensione personalizzata per l'annuncio:
(Facoltativo) Più dimensioni degli annunci
Ad Manager ti consente di specificare più dimensioni degli annunci che potrebbero essere idonee alla pubblicazione in un AdManagerBannerView. Prima di implementare questa funzionalità nell'SDK, crea un elemento pubblicitario che abbia come target le stesse unità pubblicitarie associate a creatività di dimensioni diverse.
Nella tua app, passa più parametri AdSize in ValidAdSizes:
Se AdManagerAdView cambia dimensioni al momento dell'aggiornamento, il layout deve essere in grado di adattarsi automaticamente alle nuove dimensioni. AdManagerAdView utilizza per impostazione predefinita le dimensioni
passate nel primo parametro fino alla restituzione dell'annuncio successivo.
Carica un annuncio banner
Dopo aver inserito AdManagerBannerView, procedi con il caricamento di un annuncio con il metodo LoadAd() nella classe AdManagerBannerView. Accetta un parametro che contiene informazioni di runtime, come informazioni di targeting, etichette di esclusione e l'ID fornito dal publisher.
Per caricare un annuncio, crea un AdManagerAdRequest e passalo al metodo LoadAd().
// Send a request to load an ad into the banner view.
adManagerBannerView.LoadAd(new AdManagerAdRequest());
Ascolta gli eventi di visualizzazione dei banner
Per personalizzare il comportamento dell'annuncio, puoi collegarti a una serie di eventi nel ciclo di vita dell'annuncio, ad esempio caricamento, apertura o chiusura. Per ascoltare questi eventi, registra un delegato:
adManagerBannerView.OnBannerAdLoaded += () =>
{
// Raised when an ad is loaded into the banner view.
};
adManagerBannerView.OnBannerAdLoadFailed += (LoadAdError error) =>
{
// Raised when an ad fails to load into the banner view.
};
adManagerBannerView.OnAdPaid += (AdValue adValue) =>
{
// Raised when the ad is estimated to have earned money.
};
adManagerBannerView.OnAdImpressionRecorded += () =>
{
// Raised when an impression is recorded for an ad.
};
adManagerBannerView.OnAdClicked += () =>
{
// Raised when a click is recorded for an ad.
};
adManagerBannerView.OnAdFullScreenContentOpened += () =>
{
// Raised when an ad opened full screen content.
};
adManagerBannerView.OnAdFullScreenContentClosed += () =>
{
// Raised when the ad closed full screen content.
};
Elimina la visualizzazione banner
Per eliminare il banner, chiama il metodo Destroy() per rilasciare le risorse:
if (adManagerBannerView != null)
{
// Always destroy the banner view when no longer needed.
adManagerBannerView.Destroy();
adManagerBannerView = null;
}
Per i banner che non vengono caricati, ti consigliamo di aggiornarli anziché eliminarli e crearne di nuovi. Per maggiori dettagli, consulta Aggiorna un annuncio.
Aggiorna un annuncio
Se hai configurato l'unità pubblicitaria per l'aggiornamento, non è necessario richiedere un altro annuncio quando l'annuncio non viene caricato. Google Mobile Ads Unity Plugin rispetta qualsiasi frequenza di aggiornamento specificata nell'interfaccia utente di Ad Manager. Se non hai attivato l'aggiornamento, invia una nuova richiesta. Per maggiori dettagli sull'aggiornamento delle unità pubblicitarie, ad esempio l'impostazione di una frequenza di aggiornamento, consulta Frequenza di aggiornamento degli annunci nelle app mobile.
Dimensioni dei banner
I banner adattivi di grandi dimensioni offrono un formato più grande progettato per layout senza scorrimento. Rispetto ai banner adattivi ancorati standard, questi banner consentono un'altezza massima maggiore (fino al 20% dell'altezza dello schermo, tra 50 e 150 dp). Questo spazio più ampio è ottimizzato per i contenuti video.
La tabella seguente elenca le dimensioni standard dei banner:
| Dimensioni in dp (LxA) | Descrizione | Disponibilità | Costante AdSize |
|---|---|---|---|
| 320 x 50 | Banner standard | Cellulari e tablet | BANNER |
| 320 x 100 | Banner grande | Cellulari e tablet | LARGE_BANNER |
| 300 x 250 | Rettangolo medio IAB | Cellulari e tablet | MEDIUM_RECTANGLE |
| 468 x 60 | Banner IAB a grandezza originale | Tablet | FULL_BANNER |
| 728 x 90 | Leaderboard IAB | Tablet | LEADERBOARD |
| Larghezza fornita x Altezza adattiva | Banner adattivo | Cellulari e tablet | N/D |
| Larghezza dello schermo x 32|50|90 | Banner intelligente | Cellulari e tablet | SMART_BANNER |
| Scopri di più sui banner adattivi, destinati a sostituire i banner intelligenti. | |||
Eventi nell'app
Gli eventi relativi alle app ti consentono di creare annunci che possono inviare messaggi al codice dell'app. L'app può quindi intraprendere azioni in base a questi messaggi.
Puoi ascoltare gli eventi app specifici di Ad Manager utilizzando AppEvent. Questi eventi possono verificarsi in qualsiasi momento durante il ciclo di vita dell'annuncio, anche prima della chiamata di caricamento.
OnAppEventReceived viene generato quando si verifica un evento app in un annuncio. Ecco un esempio di come gestire questo evento nel codice:
adManagerBannerView.OnAppEventReceived += (AppEvent args) =>
{
Debug.Log($"Received app event from the ad: {args.Name}, {args.Data}.");
};
Ecco un esempio che mostra come modificare il colore di sfondo dell'app in base a un evento app con un nome di colore:
adManagerBannerView.OnAppEventReceived += (AppEvent args) =>
{
if (args.Name == "color")
{
Color color;
if (ColorUtility.TryParseHtmlString(args.Data, out color))
{
renderer.material.color = color;
}
}
};
Di seguito è riportata la creatività corrispondente che invia l'evento relativo all'app per il colore:
<html>
<head>
<script src="//www.gstatic.com/afma/api/v1/google_mobile_app_ads.js"></script>
<script>
document.addEventListener("DOMContentLoaded", function() {
// Send a color=green event when ad loads.
admob.events.dispatchAppEvent("color", "green");
document.getElementById("ad").addEventListener("click", function() {
// Send a color=blue event when ad is clicked.
admob.events.dispatchAppEvent("color", "blue");
});
});
</script>
<style>
#ad {
width: 320px;
height: 50px;
top: 0;
left: 0;
font-size: 24pt;
font-weight: bold;
position: absolute;
background: black;
color: white;
text-align: center;
}
</style>
</head>
<body>
<div id="ad">Carpe diem!</div>
</body>
</html>
Risorse aggiuntive
- Esempio HelloWorld: un'implementazione minima di tutti i formati degli annunci.