Je veux mettre en œuvre une vidéo récompensée sur mon application Android, la première fois que je clique sur Afficher la vidéo, fonctionne simplement bien, mais après cela, la seconde ou la troisième fois que je clique pour le montrer, cela ne fonctionne pas, et jette sur le journal: ceci est mon code: p> pouvez-vous aider à comprendre ce qui ne va pas?
Merci p> p>
6 Réponses :
Concernant le Manuel Il semble que vous devez recharger votre vidéo:
remplacer cette méthode
Oui c'est ce que je fais: @override public vide annulation onewardedVideoadclosed () {toast.maketext (ceci, "onewardedVideoadclosed", toast.length_short) .Show (); loadrewardedvideoad (); }
Si vous avez demandé d'obtenir une annonce de AdMob, lorsque vous avez déjà reçu une autre demande de vidéo AdMob pour avoir une annonce de AdMob et la 1ère demande que vous avez rendue Retour Répondre avec une annonce et que vous avez décidé de montrer () AD, vous êtes Obtenir Je pensais que c'était à propos de Singleton d'une manière ou d'une autre. La deuxième demande que vous avez faite, brise quelque chose dans la première demande. Cela confond des personnes parce que vous êtes autorisé à créer plusieurs instance de com.google.android.gms.ads.reward.rewardedvideoadlistener () code>. Dans mon cas, nous devons bloquer une deuxième demande d'admob si vous attendez déjà une réponse du premier. P>
J'ai fait face au même problème et à la recherche de Exemple officiel J'ai trouvé qu'ils n'appellent pas p> bien qu'ils disent de l'appeler dans leur Tutoriel officiel . Donc, après
Cela ressemble vraiment à une solution!
Alors bizarre. Cela ne fuit pas cela ne fuit pas?
J'étais confronté exactement au même problème et après quelques jours d'enquête, j'ai trouvé la solution. P>
Vous devez être vraiment prudent de votre Et comme vous l'avez peut-être trouvé dans d'autres threads, n'essayez pas de charger des annonces simultanément, même si le SDK le permet. Assurez-vous de votre écoulement que vous chargez une annonce N'hésitez pas à enregistrer votre RécompenséVideoad Code> Lifecycle.
Dans mon cas, j'ai attaché mon cycle de vie de mon objet à cet objet. Mais j'ai compris que Calling
Onresume () Code> au
REWWEEDVideoad CODE> L'objet sera un type "re-init", donc même si vous avez chargé une annonce avant, vous devrez recharger un. p>
onresume () code> à votre
réveinedVideoad code> objet. p>
REWATEDVideoad code> Méthodes de rappel pour vous aider à comprendre et à optimiser votre flux de chargement de publicité. p>
Je place une vidéo admob, qui est exécutée lorsque vous entrez dans l'activité, j'ai eu le même problème lors de la saisie de l'activité pour la deuxième fois. Dans mon cas, j'ai mis une boucle exécutable pour démarrer la vidéo quand elle est déjà chargée.
@Override public void onRewardedVideoAdOpened() { showProgressBar(false); stop(); }
Selon le Google Docs (link) pour le nouveau Annonces vidéo récompensées.
REWWADEDAD est un objet à usage unique. Cela signifie qu'une fois qu'une annonce récompensée est affichée, l'objet ne peut pas être utilisé pour charger une autre annonce. Pour demander une autre annonce récompensée, vous devrez créer un nouvel objet REWWADADADAD. P> BlockQuote>
Donc, si vous avez besoin de la deuxième annonce, vous devez disposer de l'objet RewwardedAD existant et créer un nouvel objet. Vous pouvez le faire comme: p>
xxx pré> p>