如何在 adMobPro 中显示加载的奖励视频?
Posted
技术标签:
【中文标题】如何在 adMobPro 中显示加载的奖励视频?【英文标题】:How to show loaded reward video in adMobPro? 【发布时间】:2016-09-21 05:06:50 【问题描述】:我在 phonegap 应用程序中使用https://github.com/floatinghotpot/cordova-admob-pro。
对于我正在使用的插页式广告和横幅广告
AdMob.showInterstitial();
AdMob.showBanner(getSelectedPosition());
工作正常。现在我正在尝试显示奖励视频。首先,我准备了奖励视频
AdMob.prepareRewardVideoAd(adId: admobid.reward, autoShow: false);
那我试着展示一下
AdMob.showRewardVideoAd();
但是视频没有显示,方法 showRewardVideoAd() 是我的猜测 w.r.t。 showInterstitial()
,在文档中我没有找到任何方法如AdMob.showRewardVideoAd()
。
什么是正确的方法,我应该如何显示它?请帮忙
【问题讨论】:
【参考方案1】:我不确定,但也许您应该等待视频准备好后再致电showRewardVideoAd
。尝试从prepareRewardVideoAd
的成功回调中调用该函数。
另外,您使用的是“Admob”吗?在函数调用之前?我觉得很有必要。
【讨论】:
【参考方案2】:相关:
作为新手,我早上来到这个页面并没有运气 -pro 模块
所以,我转向了 -free 模块
即cordova-plugin-admob-free
我犯了几个错误,但最后解决了,在这里写了一个github页面,现在可以正常工作了:https://github.com/manoharreddyporeddy/everyday-solutions/blob/master/display-ads-on-android-using-admob.js
【讨论】:
【参考方案3】:您需要做的就是实现所有必需的方法,例如 onResume、onPause。
看看我的活动课:
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.reward.RewardItem;
import com.google.android.gms.ads.reward.RewardedVideoAd;
import com.google.android.gms.ads.reward.RewardedVideoAdListener;
public class AdActivity extends AppCompatActivity implements RewardedVideoAdListener
private RewardedVideoAd mRewardedVideoAd;
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ad);
// Use an activity context to get the rewarded video instance.
mRewardedVideoAd = MobileAds.getRewardedVideoAdInstance(this);
mRewardedVideoAd.setRewardedVideoAdListener(this);
requestNewRewardVideo();
protected void onResume()
super.onResume();
mRewardedVideoAd.resume(this);
@Override
protected void onPause()
super.onPause();
mRewardedVideoAd.pause(this);
@Override
public void onDestroy()
mRewardedVideoAd.destroy(this);
super.onDestroy();
private void requestNewRewardVideo()
//load rewared video
mRewardedVideoAd.loadAd("ca-app-pub-xxxxxxxxxxxxxxxxxx",
new AdRequest.Builder().build());
@Override
public void onRewardedVideoAdLoaded()
mRewardedVideoAd.show();
@Override
public void onRewardedVideoAdOpened()
@Override
public void onRewardedVideoStarted()
@Override
public void onRewardedVideoAdClosed()
//request for new reward video
requestNewRewardVideo();
@Override
public void onRewarded(RewardItem rewardItem)
// reward your user here
@Override
public void onRewardedVideoAdLeftApplication()
@Override
public void onRewardedVideoAdFailedToLoad(int i)
应用构建.gradle
实施 'com.google.android.gms:play-services-ads:11.4.2'
点击按钮时显示广告:
if (mRewardedVideoAd.isLoaded())
mRewardedVideoAd.show();
【讨论】:
以上是关于如何在 adMobPro 中显示加载的奖励视频?的主要内容,如果未能解决你的问题,请参考以下文章