بینابینی پاداش

بینابینی دارای پاداش نوعی قالب تبلیغاتی با انگیزه است که به شما امکان می دهد برای تبلیغاتی که به طور خودکار در طول انتقال طبیعی برنامه ظاهر می شوند، جوایزی ارائه دهید. برخلاف تبلیغات دارای پاداش، کاربران مجبور نیستند برای مشاهده یک بینابینی دارای پاداش، شرکت کنند.

پیش نیازها

  • Google Mobile Ads SDK 19.2.0 یا بالاتر.
  • راهنمای شروع به کار را دنبال کنید تا SDK تبلیغات Google Mobile را وارد کنید و AndroidManifest.xml خود را به‌روزرسانی کنید.
  • با مدیر حساب خود تماس بگیرید تا به تبلیغات بینابینی دارای پاداش دسترسی پیدا کنید.

پیاده سازی

مراحل اصلی برای ادغام تبلیغات بینابینی دارای پاداش عبارتند از:

  1. یک تبلیغ را بارگیری کنید.
  2. برای تماس های تمام صفحه رویداد ثبت نام کنید.
  3. پاسخ به تماس پاداش را مدیریت کنید.
  4. نمایش آگهی

یک تبلیغ را بارگیری کنید

بارگذاری یک تبلیغ با استفاده از روش load() در کلاس RewardedInterstitialAd انجام می شود. روش بارگیری به یک Context، شناسه واحد تبلیغات شما، شی an AdRequest و یک RewardedInterstitialAdLoadCallback نیاز دارد تا در صورت موفقیت یا ناموفق بودن بارگیری آگهی مطلع شوند. شیء بارگذاری شده RewardedInterstitialAd به عنوان یک پارامتر در پاسخ به تماس onRewardedInterstitialAdLoaded() ارائه می شود. مثال زیر نحوه بارگیری RewardedInterstitialAd را در MainActivity خود نشان می دهد.

جاوا

public class MainActivity extends AppCompatActivity {
  private RewardedInterstitialAd rewardedInterstitialAd;
  private String TAG = "MainActivity";

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    MobileAds.initialize(this, new OnInitializationCompleteListener() {
      @Override
      public void onInitializationComplete(InitializationStatus initializationStatus) {
        loadAd();
      }
    });
  }

  public void loadAd() {
    // Use the test ad unit ID to load an ad.
    RewardedInterstitialAd.load(MainActivity.this, "ca-app-pub-3940256099942544/5354046379",
        new AdRequest.Builder().build(),  new RewardedInterstitialAdLoadCallback() {
      @Override
      public void onAdLoaded(RewardedInterstitialAd ad) {
        Log.d(TAG, "Ad was loaded.");
        rewardedInterstitialAd = ad;
      }
      @Override
      public void onAdFailedToLoad(LoadAdError loadAdError) {
        Log.d(TAG, loadAdError.toString());
        rewardedInterstitialAd = null;
      }
    });
  }
}

کاتلین

import com.google.android.gms.ads.rewardedinterstitial.RewardedInterstitialAd
import com.google.android.gms.ads.rewardedinterstitial.RewardedInterstitialAdLoadCallback

class MainActivity : AppCompactActivity() {

  private var rewardedInterstitialAd? = null
  private final var TAG = "MainActivity"

  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    MobileAds.initialize(this) { initializationStatus ->
      loadAd()
    }
  }

  private fun loadAd() {
    RewardedInterstitialAd.load(this, "ca-app-pub-3940256099942544/5354046379",
      AdRequest.Builder().build(), object : RewardedInterstitialAdLoadCallback() {
      override fun onAdLoaded(ad: RewardedInterstitialAd) {
        Log.d(TAG, "Ad was loaded.")
        rewardedInterstitialAd = ad
      }

      override fun onAdFailedToLoad(adError: LoadAdError) {
        Log.d(TAG, adError?.toString())
        rewardedInterstitialAd = null
      }
    })
  }
}

برای پاسخ به تماس ها ثبت نام کنید

برای دریافت اعلان‌ها برای رویدادهای ارائه، باید یک شی FullScreenContentCallback را به تنظیم‌کننده آگهی خود ارسال کنید. شیء FullScreenContentCallback برای زمانی که تبلیغ با موفقیت یا ناموفق نمایش داده می شود و زمانی که رد می شود، پاسخ به تماس ها را کنترل می کند. کد زیر نحوه تنظیم یک شی FullScreenContentCallback ناشناس را در RewardedInterstitialAdLoadCallback خود نشان می دهد:

جاوا

public void loadAd(){
  RewardedInterstitialAd.load(MainActivity.this, "ca-app-pub-3940256099942544/5354046379",
      new AdRequest.Builder().build(), new RewardedInterstitialAdLoadCallback() {
    @Override
    public void onAdLoaded(RewardedInterstitialAd ad) {
      rewardedInterstitialAd = ad;
      rewardedInterstitialAd.setFullScreenContentCallback(new FullScreenContentCallback() {
        @Override
        public void onAdClicked() {
          // Called when a click is recorded for an ad.
          Log.d(TAG, "Ad was clicked.");
        }

        @Override
        public void onAdDismissedFullScreenContent() {
          // Called when ad is dismissed.
          // Set the ad reference to null so you don't show the ad a second time.
          Log.d(TAG, "Ad dismissed fullscreen content.");
          rewardedInterstitialAd = null;
        }

        @Override
        public void onAdFailedToShowFullScreenContent(AdError adError) {
          // Called when ad fails to show.
          Log.e(TAG, "Ad failed to show fullscreen content.");
          rewardedInterstitialAd = null;
        }

        @Override
        public void onAdImpression() {
          // Called when an impression is recorded for an ad.
          Log.d(TAG, "Ad recorded an impression.");
        }

        @Override
        public void onAdShowedFullScreenContent() {
          // Called when ad is shown.
          Log.d(TAG, "Ad showed fullscreen content.");
        }
      });
    }
    @Override
    public void onAdFailedToLoad(LoadAdError loadAdError) {
      Log.d(TAG, loadAdError.toString());
      rewardedInterstitialAd = null;
    }
  });
}

کاتلین

private fun loadAd() {
  RewardedInterstitialAd.load(this, "ca-app-pub-3940256099942544/5354046379",
    AdRequest.Builder().build(), object : RewardedInterstitialAdLoadCallback() {
    override fun onAdLoaded(ad: RewardedInterstitialAd) {
      rewardedInterstitialAd = ad
      rewardedInterstitialAd?.fullScreenContentCallback = object: FullScreenContentCallback() {
        override fun onAdClicked() {
          // Called when a click is recorded for an ad.
          Log.d(TAG, "Ad was clicked.")
        }

        override fun onAdDismissedFullScreenContent() {
          // Called when ad is dismissed.
          // Set the ad reference to null so you don't show the ad a second time.
          Log.d(TAG, "Ad dismissed fullscreen content.")
          rewardedInterstitialAd = null
        }

        override fun onAdFailedToShowFullScreenContent(adError: AdError) {
          // Called when ad fails to show.
          Log.e(TAG, "Ad failed to show fullscreen content.")
          rewardedInterstitialAd = null
        }

        override fun onAdImpression() {
          // Called when an impression is recorded for an ad.
          Log.d(TAG, "Ad recorded an impression.")
        }

        override fun onAdShowedFullScreenContent() {
          // Called when ad is shown.
          Log.d(TAG, "Ad showed fullscreen content.")
        }
      }
    }

    override fun onAdFailedToLoad(adError: LoadAdError) {
      Log.d(TAG, adError?.toString())
      rewardedInterstitialAd = null
    }
  })
}

پاداش ها را مدیریت کنید

برای نمایش تبلیغ بینابینی پاداش داده شده خود، رابط OnUserEarnedRewardListener را در MainActivity خود پیاده سازی کنید تا در صورت کسب جایزه به کاربر اطلاع داده شود.

جاوا

public class MainActivity extends AppCompatActivity implements OnUserEarnedRewardListener {
  ...
  @Override
  public void onUserEarnedReward(@NonNull RewardItem rewardItem) {
    Log.i(TAG, "User earned reward.");
    // TODO: Reward the user!
  }
}

کاتلین

class MainActivity : AppCompatActivity(), OnUserEarnedRewardListener {
  ...
  override fun onUserEarnedReward(rewardItem: RewardItem) {
    Log.d(TAG, "User earned reward.")
    // TODO: Reward the user!
  }
}

آگهی را نمایش دهید

پس از پیاده‌سازی رابط OnUserEarnedRewardListener ، می‌توانید تبلیغ را با استفاده از متد show() آگهی ارائه دهید:

جاوا

rewardedInterstitialAd.show(/* Activity */ MainActivity.this,/*
    OnUserEarnedRewardListener */ MainActivity.this);

کاتلین

rewardedInterstitialAd?.show(/* Activity */ this, /*
    OnUserEarnedRewardListener */ this)

نمونه هایی در GitHub

,

بینابینی دارای پاداش نوعی قالب تبلیغاتی با انگیزه است که به شما امکان می دهد برای تبلیغاتی که به طور خودکار در طول انتقال طبیعی برنامه ظاهر می شوند، جوایزی ارائه دهید. برخلاف تبلیغات دارای پاداش، کاربران مجبور نیستند برای مشاهده یک بینابینی دارای پاداش، شرکت کنند.

پیش نیازها

  • Google Mobile Ads SDK 19.2.0 یا بالاتر.
  • راهنمای شروع به کار را دنبال کنید تا SDK تبلیغات Google Mobile را وارد کنید و AndroidManifest.xml خود را به‌روزرسانی کنید.
  • با مدیر حساب خود تماس بگیرید تا به تبلیغات بینابینی دارای پاداش دسترسی پیدا کنید.

پیاده سازی

مراحل اصلی برای ادغام تبلیغات بینابینی دارای پاداش عبارتند از:

  1. یک تبلیغ را بارگیری کنید.
  2. برای تماس های تمام صفحه رویداد ثبت نام کنید.
  3. پاسخ به تماس پاداش را مدیریت کنید.
  4. نمایش آگهی

یک تبلیغ را بارگیری کنید

بارگذاری یک تبلیغ با استفاده از روش load() در کلاس RewardedInterstitialAd انجام می شود. روش بارگیری به یک Context، شناسه واحد تبلیغات شما، شی an AdRequest و یک RewardedInterstitialAdLoadCallback نیاز دارد تا در صورت موفقیت یا ناموفق بودن بارگیری آگهی مطلع شوند. شیء بارگذاری شده RewardedInterstitialAd به عنوان یک پارامتر در پاسخ به تماس onRewardedInterstitialAdLoaded() ارائه می شود. مثال زیر نحوه بارگیری RewardedInterstitialAd را در MainActivity خود نشان می دهد.

جاوا

public class MainActivity extends AppCompatActivity {
  private RewardedInterstitialAd rewardedInterstitialAd;
  private String TAG = "MainActivity";

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    MobileAds.initialize(this, new OnInitializationCompleteListener() {
      @Override
      public void onInitializationComplete(InitializationStatus initializationStatus) {
        loadAd();
      }
    });
  }

  public void loadAd() {
    // Use the test ad unit ID to load an ad.
    RewardedInterstitialAd.load(MainActivity.this, "ca-app-pub-3940256099942544/5354046379",
        new AdRequest.Builder().build(),  new RewardedInterstitialAdLoadCallback() {
      @Override
      public void onAdLoaded(RewardedInterstitialAd ad) {
        Log.d(TAG, "Ad was loaded.");
        rewardedInterstitialAd = ad;
      }
      @Override
      public void onAdFailedToLoad(LoadAdError loadAdError) {
        Log.d(TAG, loadAdError.toString());
        rewardedInterstitialAd = null;
      }
    });
  }
}

کاتلین

import com.google.android.gms.ads.rewardedinterstitial.RewardedInterstitialAd
import com.google.android.gms.ads.rewardedinterstitial.RewardedInterstitialAdLoadCallback

class MainActivity : AppCompactActivity() {

  private var rewardedInterstitialAd? = null
  private final var TAG = "MainActivity"

  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    MobileAds.initialize(this) { initializationStatus ->
      loadAd()
    }
  }

  private fun loadAd() {
    RewardedInterstitialAd.load(this, "ca-app-pub-3940256099942544/5354046379",
      AdRequest.Builder().build(), object : RewardedInterstitialAdLoadCallback() {
      override fun onAdLoaded(ad: RewardedInterstitialAd) {
        Log.d(TAG, "Ad was loaded.")
        rewardedInterstitialAd = ad
      }

      override fun onAdFailedToLoad(adError: LoadAdError) {
        Log.d(TAG, adError?.toString())
        rewardedInterstitialAd = null
      }
    })
  }
}

برای پاسخ به تماس ها ثبت نام کنید

برای دریافت اعلان‌ها برای رویدادهای ارائه، باید یک شی FullScreenContentCallback را به تنظیم‌کننده آگهی خود ارسال کنید. شیء FullScreenContentCallback برای زمانی که تبلیغ با موفقیت یا ناموفق نمایش داده می شود و زمانی که رد می شود، پاسخ به تماس ها را کنترل می کند. کد زیر نحوه تنظیم یک شی FullScreenContentCallback ناشناس را در RewardedInterstitialAdLoadCallback خود نشان می دهد:

جاوا

public void loadAd(){
  RewardedInterstitialAd.load(MainActivity.this, "ca-app-pub-3940256099942544/5354046379",
      new AdRequest.Builder().build(), new RewardedInterstitialAdLoadCallback() {
    @Override
    public void onAdLoaded(RewardedInterstitialAd ad) {
      rewardedInterstitialAd = ad;
      rewardedInterstitialAd.setFullScreenContentCallback(new FullScreenContentCallback() {
        @Override
        public void onAdClicked() {
          // Called when a click is recorded for an ad.
          Log.d(TAG, "Ad was clicked.");
        }

        @Override
        public void onAdDismissedFullScreenContent() {
          // Called when ad is dismissed.
          // Set the ad reference to null so you don't show the ad a second time.
          Log.d(TAG, "Ad dismissed fullscreen content.");
          rewardedInterstitialAd = null;
        }

        @Override
        public void onAdFailedToShowFullScreenContent(AdError adError) {
          // Called when ad fails to show.
          Log.e(TAG, "Ad failed to show fullscreen content.");
          rewardedInterstitialAd = null;
        }

        @Override
        public void onAdImpression() {
          // Called when an impression is recorded for an ad.
          Log.d(TAG, "Ad recorded an impression.");
        }

        @Override
        public void onAdShowedFullScreenContent() {
          // Called when ad is shown.
          Log.d(TAG, "Ad showed fullscreen content.");
        }
      });
    }
    @Override
    public void onAdFailedToLoad(LoadAdError loadAdError) {
      Log.d(TAG, loadAdError.toString());
      rewardedInterstitialAd = null;
    }
  });
}

کاتلین

private fun loadAd() {
  RewardedInterstitialAd.load(this, "ca-app-pub-3940256099942544/5354046379",
    AdRequest.Builder().build(), object : RewardedInterstitialAdLoadCallback() {
    override fun onAdLoaded(ad: RewardedInterstitialAd) {
      rewardedInterstitialAd = ad
      rewardedInterstitialAd?.fullScreenContentCallback = object: FullScreenContentCallback() {
        override fun onAdClicked() {
          // Called when a click is recorded for an ad.
          Log.d(TAG, "Ad was clicked.")
        }

        override fun onAdDismissedFullScreenContent() {
          // Called when ad is dismissed.
          // Set the ad reference to null so you don't show the ad a second time.
          Log.d(TAG, "Ad dismissed fullscreen content.")
          rewardedInterstitialAd = null
        }

        override fun onAdFailedToShowFullScreenContent(adError: AdError) {
          // Called when ad fails to show.
          Log.e(TAG, "Ad failed to show fullscreen content.")
          rewardedInterstitialAd = null
        }

        override fun onAdImpression() {
          // Called when an impression is recorded for an ad.
          Log.d(TAG, "Ad recorded an impression.")
        }

        override fun onAdShowedFullScreenContent() {
          // Called when ad is shown.
          Log.d(TAG, "Ad showed fullscreen content.")
        }
      }
    }

    override fun onAdFailedToLoad(adError: LoadAdError) {
      Log.d(TAG, adError?.toString())
      rewardedInterstitialAd = null
    }
  })
}

پاداش ها را مدیریت کنید

برای نمایش تبلیغ بینابینی پاداش داده شده خود، رابط OnUserEarnedRewardListener را در MainActivity خود پیاده سازی کنید تا در صورت کسب جایزه به کاربر اطلاع داده شود.

جاوا

public class MainActivity extends AppCompatActivity implements OnUserEarnedRewardListener {
  ...
  @Override
  public void onUserEarnedReward(@NonNull RewardItem rewardItem) {
    Log.i(TAG, "User earned reward.");
    // TODO: Reward the user!
  }
}

کاتلین

class MainActivity : AppCompatActivity(), OnUserEarnedRewardListener {
  ...
  override fun onUserEarnedReward(rewardItem: RewardItem) {
    Log.d(TAG, "User earned reward.")
    // TODO: Reward the user!
  }
}

آگهی را نمایش دهید

پس از پیاده‌سازی رابط OnUserEarnedRewardListener ، می‌توانید تبلیغ را با استفاده از متد show() آگهی ارائه دهید:

جاوا

rewardedInterstitialAd.show(/* Activity */ MainActivity.this,/*
    OnUserEarnedRewardListener */ MainActivity.this);

کاتلین

rewardedInterstitialAd?.show(/* Activity */ this, /*
    OnUserEarnedRewardListener */ this)

نمونه هایی در GitHub