2014-06-18 1 views
2

Mon application ouvre un éditeur InterstitialAd de publication chaque fois que vous démarrez, mais lorsqu'un utilisateur ferme, il rouvre. Ce processus se passe constamment et alors vous ne pouvez pas utiliser l'application, quelqu'un peut-il m'aider?L'annonce interstitielle d'Android Publisher s'affiche après la fermeture

public void getIntertitalAds(boolean isPortraitMode) 
{ 
    interstitial = new PublisherInterstitialAd(context); 
    if(isPortraitMode) 
     interstitial.setAdUnitId(tags.getAdUnitInterstitial()); 
    else 
     interstitial.setAdUnitId(tags.getAdUnitInterstitialTablet()); 

    AdListener adListener = new AdListener() { 

     @Override 
     public void onAdLoaded() { 
      super.onAdLoaded(); 

      if(interstitial!=null) 
       interstitial.show(); 
     } 

     @Override 
     public void onAdClosed() { 
      super.onAdClosed(); 

      interstitial = null; 
     } 
    }; 

    // Create ad request. 
    PublisherAdRequest adRequest = new PublisherAdRequest.Builder() 
    .build(); 

    // Begin loading your interstitial. 
    interstitial.setAdListener(adListener); 
    interstitial.loadAd(adRequest); 
} 

Répondre

1
  1. jamais appel interstitial.show() de AdListener#onAdLoaded(). Vous n'avez aucun contrôle sur quand il sera appelé et il présente une expérience utilisateur vraiment pauvre. Appelez plutôt interstitial.show() à un point de rupture naturel dans votre application.

  2. Il n'est pas nécessaire d'avoir des AdUnitIds distincts pour le portrait et le paysage. Les interstitiels sont les mêmes indépendamment.

  3. Tout le code dans votre getIntertitalAds() (sic) méthode doit être Activity#onCreate

Je soupçonne fortement vos problèmes proviennent d'une combinaison de 1 et 3.

+0

Merci, point 1 était mon problème et est résolu maintenant. – nss

+0

Que faire si je veux afficher mon interstitiel au démarrage de l'application, dès qu'il est prêt? – joao2fast4u

+0

Si vous utilisez #onAdLoaded pour lancer l'affichage, vous interrompez la tâche intermédiaire de l'utilisateur. Donc, je dirais que montrer sur le démarrage de l'application n'est pas idéal. Cependant, si vous avez lancé un post-démarrage par l'utilisateur que vous pouvez utiliser pour afficher une annonce (si vous en avez déjà chargé un), c'est beaucoup mieux. – William

Questions connexes