Как показать загруженное видео вознаграждения в AdMobPro?

Я использую 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().

Каков правильный метод, как мне его отобразить? пожалуйста помоги


person mujaffars    schedule 21.09.2016    source источник


Ответы (3)


Я не уверен, но, возможно, вам следует подождать, пока видео будет подготовлено, прежде чем вызывать showRewardVideoAd. Попробуйте вызвать эту функцию из обратного вызова успеха prepareRewardVideoAd.

Кроме того, вы используете «Admob». до вызова функции? Я думаю, что это необходимо.

person goldstein91    schedule 23.01.2018

Связанный:

Будучи новичком, я зашел на эту страницу утром, и мне не повезло с модулем -pro
, поэтому я перешел на модуль -free
, то есть cordova-plugin-admob-free

Я сделал несколько ошибок, но, наконец, решил это и написал здесь страницу github, теперь она работает нормально:
https://github.com/manoharreddyporeddy/everyday-solutions/blob/master/display-ads-on-android-using-admob.js

person Manohar Reddy Poreddy    schedule 28.02.2019

Все, что вам нужно сделать, это реализовать все необходимые методы, такие как 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();
            }
person Pankaj Kant Patel    schedule 23.01.2018