Как показать загруженное видео с наградами в adMobPro?
Я использую https://github.com/floatinghotpot/cordova-admob-pro в своем приложении для телефонной пробелы.
Для рекламы и баннера я использую
AdMob.showInterstitial();
AdMob.showBanner(getSelectedPosition());
работает правильно. Сейчас я пытаюсь показать видео с наградами. Во-первых, я подготовил видео наград
AdMob.prepareRewardVideoAd({adId: admobid.reward, autoShow: false});
Тогда я пытаюсь показать это
AdMob.showRewardVideoAd();
Но видео не отображается, метод showRewardVideoAd() - мое предположение showInterstitial()
В документации я не нашел ни одного метода, как AdMob.showRewardVideoAd()
,
Какой правильный метод, как я должен отобразить его? пожалуйста помоги
2 ответа
Я не уверен, но, возможно, вам следует подождать, пока видео будет подготовлено, прежде чем позвонить showRewardVideoAd
, Попробуйте вызвать эту функцию изнутри успешного обратного вызова prepareRewardVideoAd
,
Кроме того, вы используете "Admob". до вызова функции? Я думаю, что это необходимо.
Связанный один:
Будучи новичком, я пришел на эту страницу утром и мне не повезло с модулем -pro
Итак, я перешел на модуль -free
то есть, cordova-plugin-admob-free
Я сделал несколько ошибок, но в конце концов решил и написал страницу github, теперь она работает нормально:
https://github.com/manoharreddyporeddy/everyday-solutions/blob/master/display-ads-on-android-using-admob.js
Все, что вам нужно сделать, это реализовать все необходимые методы, такие как 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) {
}
}
приложение build.gradle
реализация "com.google.android.gms:play-services-ads:11.4.2"
показывать рекламу при нажатии кнопки:
if (mRewardedVideoAd.isLoaded()) {
mRewardedVideoAd.show();
}