Les annonces interstitielles s'affichent en plein écran et recouvrent l'interface de l'application qui les héberge. Elles sont généralement affichées à des points de transition naturels dans le flux d'une application, par exemple entre deux activités ou pendant une pause entre deux niveaux dans un jeu. Lorsqu'une application diffuse une annonce interstitielle, l'utilisateur peut appuyer sur l'annonce et accéder à sa destination, ou la fermer et revenir à l'application.
Ce guide explique comment intégrer des annonces interstitielles dans une application l'application.
Prérequis
- SDK Google Mobile Ads 19.7.0 ou version ultérieure
- Suivez le guide de démarrage.
Toujours tester avec des annonces tests
Lorsque vous créez et testez vos applications, assurez-vous d'utiliser des annonces tests plutôt que des annonces de production. À défaut, votre compte risque d'être suspendu.
Le moyen le plus simple de charger des annonces tests consiste à utiliser notre ID de bloc d'annonces test dédié Interstitiels Android:
/21775744923/example/interstitial
Il a été spécialement configuré pour renvoyer des annonces tests pour chaque demande. de l'utiliser dans vos propres applications lors du codage, des tests et du débogage. Veillez simplement à le remplacer par votre propre ID de bloc d'annonces avant de publier votre application.
Pour en savoir plus sur le fonctionnement des annonces tests du SDK Mobile Ads, consultez Annonces tests.
Charger une annonce
Pour charger une annonce interstitielle, appelez la méthode AdManagerInterstitialAd
statique
load()
et transmettre une
AdManagerInterstitialAdLoadCallback
pour recevoir les
ni aucune erreur possible. Notez que, comme pour les
autres rappels de chargement de format,
AdManagerInterstitialAdLoadCallback
exploite
LoadAdError
pour fournir des détails plus précis sur les erreurs.
Java
import com.google.android.gms.ads.admanager.AdManagerInterstitialAd;
import com.google.android.gms.ads.admanager.AdManagerInterstitialAdLoadCallback;
public class MainActivity extends Activity {
private AdManagerInterstitialAd mAdManagerInterstitialAd;
private static final String TAG = "MainActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
AdManagerAdRequest adRequest = new AdManagerAdRequest.Builder().build();
AdManagerInterstitialAd.load(this,"/21775744923/example/interstitial", adRequest,
new AdManagerInterstitialAdLoadCallback() {
@Override
public void onAdLoaded(@NonNull AdManagerInterstitialAd interstitialAd) {
// The mAdManagerInterstitialAd reference will be null until
// an ad is loaded.
mAdManagerInterstitialAd = interstitialAd;
Log.i(TAG, "onAdLoaded");
}
@Override
public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
// Handle the error
Log.d(TAG, loadAdError.toString());
mAdManagerInterstitialAd = null;
}
});
}
}
Kotlin
import com.google.android.gms.ads.admanager.AdManagerInterstitialAd;
import com.google.android.gms.ads.admanager.AdManagerInterstitialAdLoadCallback;
class MainActivity : AppCompatActivity() {
private var mAdManagerInterstitialAd: AdManagerInterstitialAd? = null
private final val TAG = "MainActivity"
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val adRequest = AdManagerAdRequest.Builder().build()
AdManagerInterstitialAd.load(this,"/21775744923/example/interstitial", adRequest, object : AdManagerInterstitialAdLoadCallback() {
override fun onAdFailedToLoad(adError: LoadAdError) {
Log.d(TAG, adError?.toString())
mAdManagerInterstitialAd = null
}
override fun onAdLoaded(interstitialAd: AdManagerInterstitialAd) {
Log.d(TAG, 'Ad was loaded.')
mAdManagerInterstitialAd = interstitialAd
}
})
}
}
Définir le rappel FullScreenContentCallback
FullScreenContentCallback
gère les événements liés à l'affichage de votre
InterstitialAd
Avant d'afficher InterstitialAd
, veillez à définir le paramètre
rappel:
Java
mAdManagerInterstitialAd.setFullScreenContentCallback(new FullScreenContentCallback(){
@Override
public void onAdClicked() {
// Called when a click is recorded for an ad.
Log.d(TAG, "Ad was clicked.");
}
@Override
public void onAdDismissedFullScreenContent() {
// Called when ad is dismissed.
// Set the ad reference to null so you don't show the ad a second time.
Log.d(TAG, "Ad dismissed fullscreen content.");
mAdManagerInterstitialAd = null;
}
@Override
public void onAdFailedToShowFullScreenContent(AdError adError) {
// Called when ad fails to show.
Log.e(TAG, "Ad failed to show fullscreen content.");
mAdManagerInterstitialAd = null;
}
@Override
public void onAdImpression() {
// Called when an impression is recorded for an ad.
Log.d(TAG, "Ad recorded an impression.");
}
@Override
public void onAdShowedFullScreenContent() {
// Called when ad is shown.
Log.d(TAG, "Ad showed fullscreen content.");
}
});
Kotlin
mAdManagerInterstitialAd?.fullScreenContentCallback = object: FullScreenContentCallback() {
override fun onAdClicked() {
// Called when a click is recorded for an ad.
Log.d(TAG, "Ad was clicked.")
}
override fun onAdDismissedFullScreenContent() {
// Called when ad is dismissed.
Log.d(TAG, "Ad dismissed fullscreen content.")
mAdManagerInterstitialAd = null
}
override fun onAdFailedToShowFullScreenContent(adError: AdError?) {
// Called when ad fails to show.
Log.e(TAG, "Ad failed to show fullscreen content.")
mAdManagerInterstitialAd = null
}
override fun onAdImpression() {
// Called when an impression is recorded for an ad.
Log.d(TAG, "Ad recorded an impression.")
}
override fun onAdShowedFullScreenContent() {
// Called when ad is shown.
Log.d(TAG, "Ad showed fullscreen content.")
}
}
Diffuser l'annonce
Les annonces interstitielles doivent s'afficher lors des pauses naturelles au sein d'une application.
Un bon exemple entre deux niveaux d'un jeu ou une fois que l'utilisateur a terminé une tâche.
Pour diffuser un interstitiel, utilisez l'
show()
.
Java
if (mAdManagerInterstitialAd != null) {
mAdManagerInterstitialAd.show(MyActivity.this);
} else {
Log.d("TAG", "The interstitial ad wasn't ready yet.");
}
Kotlin
if (mAdManagerInterstitialAd != null) {
mAdManagerInterstitialAd?.show(this)
} else {
Log.d("TAG", "The interstitial ad wasn't ready yet.")
}
Quelques bonnes pratiques
- Déterminez si les annonces interstitielles sont adaptées à votre application.
- Les annonces interstitielles sont plus efficaces dans les applications avec des points de transition naturels. La conclusion d'une tâche dans une application, comme partager une image ou terminer une au niveau du jeu, crée un tel point. Veillez à déterminer à quels moments de votre le flux de travail de votre application, vous diffuserez des annonces interstitielles et la probabilité répondre.
- N'oubliez pas de mettre en veille l'action lorsque vous diffusez une annonce interstitielle.
- Il existe plusieurs types d'annonces interstitielles: textuelles, illustrées, des vidéos, etc. Il est important de vous assurer que lorsque votre application affiche un l'utilisation de certaines ressources pour permettre à l'annonce pour en tirer parti. Par exemple, lorsque vous effectuez l'appel pour afficher une annonce interstitielle, veillez à mettre en pause toute sortie audio produite par votre application.
- Prévoyez un temps de chargement adéquat.
- Tout comme il est important de vous assurer que vous diffusez des annonces interstitielles
le bon moment, il est également important
de s'assurer que l'utilisateur n'a pas à
à attendre qu'elles soient chargées. Chargement de l'annonce à l'avance en appelant
load()
avant d'avoir l'intention d'appelershow()
peut s'assurer qu'une annonce interstitielle entièrement chargée au niveau du lorsque le moment est venu d'en afficher un. - N'inondez pas les utilisateurs d'annonces.
- Augmenter la fréquence des annonces interstitielles dans votre application peut sembler être un excellent moyen d'augmenter les revenus, mais cela peut aussi dégrader l'expérience utilisateur et réduire les taux de clics. Assurez-vous que les utilisateurs interrompu et il ne pourra plus profiter de votre application.
Exemples sur GitHub
Étapes suivantes
- En savoir plus sur le ciblage des annonces
- En savoir plus sur la confidentialité des utilisateurs
- Découvrez l'optimisation du SDK et le chargement des annonces. (bêta).