Inizia
Gli annunci nativi in overlay vengono mostrati agli utenti tramite componenti dell'interfaccia utente nativi della piattaforma. Questi annunci vengono visualizzati come overlay sopra l'applicazione. Il funzionamento è simile a quello degli annunci banner, ma con la possibilità di personalizzare l'aspetto degli annunci.
Gli annunci nativi in overlay supportano la mediazione e gli annunci video. Questo è un vantaggio fondamentale degli annunci nativi in overlay rispetto agli annunci nativi.
Questa guida mostra come implementare gli annunci nativi in overlay in un'app Unity, nonché alcune considerazioni importanti da tenere presenti.
Prerequisiti
Prima di continuare, completa queste operazioni:
- Configura Google Mobile Ads Unity Plugin.
- Installa il plug-in Unity 9.0.0 o versioni successive.
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, quindi è sicuro da utilizzare.
Tuttavia, dopo aver registrato un'app nell' interfaccia web di AdMob e aver creato i tuoi ID unità pubblicitaria da utilizzare nell'app, configura esplicitamente il dispositivo come dispositivo di prova durante lo sviluppo.
Android
ca-app-pub-3940256099942544/2247696110
iOS
ca-app-pub-3940256099942544/3986624511
Carica l'annuncio nativo in overlay
Il caricamento di un annuncio nativo in overlay viene eseguito utilizzando il metodo statico Load() nella classe NativeOverlayAd. L'oggetto NativeOverlayAd caricato viene fornito come parametro nel gestore di completamento.
Il seguente codice utilizza NativeOverlayAd per caricare un annuncio:
// These ad units are configured to always serve test ads.
#if UNITY_ANDROID
private string _adUnitId = "ca-app-pub-3940256099942544/2247696110";
#elif UNITY_IPHONE
private string _adUnitId = "ca-app-pub-3940256099942544/3986624511";
#else
private string _adUnitId = "unused";
#endif
private NativeOverlayAd _nativeOverlayAd;
/// <summary>
/// Loads the ad.
/// </summary>
public void LoadAd()
{
// Clean up the old ad before loading a new one.
if (_nativeOverlayAd != null)
{
DestroyAd();
}
Debug.Log("Loading native overlay ad.");
// Create a request used to load the ad.
var adRequest = new AdRequest();
// Optional: Define native ad options.
var options = new NativeAdOptions
{
AdChoicesPosition = AdChoicesPlacement.TopRightCorner,
MediaAspectRatio = NativeMediaAspectRatio.Any,
};
// Send the request to load the ad.
NativeOverlayAd.Load(_adUnitId, adRequest, options,
(NativeOverlayAd ad, LoadAdError error) =>
{
if (error != null)
{
Debug.LogError("Native Overlay ad failed to load an ad " +
" with error: " + error);
return;
}
// The ad should always be non-null if the error is null, but
// double-check to avoid a crash.
if (ad == null)
{
Debug.LogError("Unexpected error: Native Overlay ad load event " +
" fired with null ad and null error.");
return;
}
// The operation completed successfully.
Debug.Log("Native Overlay ad loaded with response : " +
ad.GetResponseInfo());
_nativeOverlayAd = ad;
// Register to ad events to extend functionality.
RegisterEventHandlers(ad);
});
}
Esegui il rendering e definisci lo stile dell'annuncio nativo in overlay
Il rendering degli annunci nativi in overlay viene eseguito utilizzando un NativeTemplateStyle. Questa classe definisce i campi che consentono di personalizzare l'aspetto dell'annuncio.
TemplateID è una stringa obbligatoria che definisce il modello nativo utilizzato per il rendering dell'annuncio in overlay nativo. Utilizza la costante NativeTemplateID per scegliere un modello nativo appropriato per il tuo annuncio.
Il seguente codice esegue il rendering dell'annuncio in overlay nativo con un modello medio e uno stile personalizzato.
/// <summary>
/// Renders the ad.
/// </summary>
public void RenderAd()
{
if (_nativeOverlayAd != null)
{
Debug.Log("Rendering Native Overlay ad.");
// Define a native template style with a custom style.
var style = new NativeTemplateStyle
{
TemplateID = NativeTemplateID.Medium,
MainBackgroundColor = Color.red,
CallToActionText = new NativeTemplateTextStyles
{
BackgroundColor = Color.green,
FontColor = Color.white,
FontSize = 9,
Style = NativeTemplateFontStyle.Bold
}
};
// Renders a native overlay ad at the default size
// and anchored to the bottom of the screne.
_nativeOverlayAd.RenderTemplate(style, AdPosition.Bottom);
}
}
Mostra e nascondi l'annuncio in overlay nativo
Il seguente codice mostra come visualizzare un annuncio nativo in overlay caricato.
/// <summary>
/// Shows the ad.
/// </summary>
public void ShowAd()
{
if (_nativeOverlayAd != null)
{
Debug.Log("Showing Native Overlay ad.");
_nativeOverlayAd.Show();
}
}
Nascondi l'annuncio nativo in overlay
Il seguente codice mostra come nascondere un annuncio in overlay nativo.
/// <summary>
/// Hides the ad.
/// </summary>
public void HideAd()
{
if (_nativeOverlayAd != null)
{
Debug.Log("Hiding Native Overlay ad.");
_nativeOverlayAd.Hide();
}
}
Elimina l'annuncio in overlay nativo
Al termine dell'utilizzo dell'annuncio nativo in overlay, assicurati di chiamare Destroy() per rilasciare le risorse.
/// <summary>
/// Destroys the native overlay ad.
/// </summary>
public void DestroyAd()
{
if (_nativeOverlayAd != null)
{
Debug.Log("Destroying native overlay ad.");
_nativeOverlayAd.Destroy();
_nativeOverlayAd = null;
}
}
Passaggi successivi
- Scopri di più sugli annunci nativi nel nostro playbook sugli annunci nativi.
- Consulta le norme e le linee guida sugli annunci nativi.