تبلیغات بینابینی با پاداش

پلتفرم را انتخاب کنید: Android iOS Unity Flutter

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

پیش نیازها

  • پلاگین Flutter 1.1.0 یا بالاتر.
  • شروع را کامل کنید . برنامه Flutter شما از قبل باید افزونه Google Mobile Ads Flutter را وارد کرده باشد.

همیشه با تبلیغات آزمایشی تست کنید

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

ساده‌ترین راه برای بارگیری آگهی‌های آزمایشی، استفاده از شناسه واحد آگهی آزمایشی اختصاصی ما برای آگهی‌های بین‌ستونی با پاداش است:

  • /21775744923/example/rewarded-interstitial

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

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

مثال زیر یک تبلیغ بین‌المللی با پاداش را بارگیری می‌کند:

RewardedInterstitialAd.load(
  adUnitId: "_adUnitId",
  request: const AdManagerAdRequest(),
  rewardedInterstitialAdLoadCallback: RewardedInterstitialAdLoadCallback(
    onAdLoaded: (RewardedInterstitialAd ad) {
      // Called when an ad is successfully received.
      debugPrint('Ad was loaded.');
      // Keep a reference to the ad so you can show it later.
      _rewardedInterstitialAd = ad;
    },
    onAdFailedToLoad: (LoadAdError error) {
      // Called when an ad request failed.
      debugPrint('Ad failed to load with error: $error');
    },
  ),
);

_adUnitId با شناسه واحد تبلیغاتی خود جایگزین کنید.

رویدادهای تبلیغاتی بینابینی پاداش

از طریق استفاده از FullScreenContentCallback ، می‌توانید به رویدادهای چرخه حیات گوش دهید، مانند زمانی که آگهی نشان داده می‌شود یا رد می‌شود. قبل از نمایش آگهی RewardedInterstitialAd.fullScreenContentCallback را تنظیم کنید تا اعلان‌های این رویدادها را دریافت کنید. این مثال هر روش را پیاده سازی می کند و یک پیام را به کنسول ثبت می کند:

ad.fullScreenContentCallback = FullScreenContentCallback(
  onAdShowedFullScreenContent: (ad) {
    // Called when the ad showed the full screen content.
    debugPrint('Ad showed full screen content.');
  },
  onAdFailedToShowFullScreenContent: (ad, err) {
    // Called when the ad failed to show full screen content.
    debugPrint('Ad failed to show full screen content with error: $err');
    // Dispose the ad here to free resources.
    ad.dispose();
  },
  onAdDismissedFullScreenContent: (ad) {
    // Called when the ad dismissed full screen content.
    debugPrint('Ad was dismissed.');
    // Dispose the ad here to free resources.
    ad.dispose();
  },
  onAdImpression: (ad) {
    // Called when an impression occurs on the ad.
    debugPrint('Ad recorded an impression.');
  },
  onAdClicked: (ad) {
    // Called when a click is recorded for an ad.
    debugPrint('Ad was clicked.');
  },
);

نمایش تبلیغ

RewardedInterstitialAd به عنوان یک پوشش در بالای تمام محتوای برنامه نمایش داده می شود و به صورت ایستا قرار می گیرد. بنابراین، نمی توان آن را به درخت ویجت Flutter اضافه کرد. با فراخوانی show() می‌توانید زمان نمایش آگهی را انتخاب کنید. RewardedInterstitialAd.show() یک OnUserEarnedRewardCallback می گیرد که زمانی که کاربر پاداشی دریافت می کند فراخوانی می شود. حتما این را اجرا کنید و برای تماشای یک تبلیغ به کاربر پاداش دهید.

_rewardedInterstitialAd?.show(
  onUserEarnedReward: (AdWithoutView view, RewardItem rewardItem) {
    debugPrint('Reward amount: ${rewardItem.amount}');
  },
);

هنگامی که show() فراخوانی شد، Ad که به این روش نمایش داده می‌شود نمی‌تواند از طریق برنامه‌ریزی حذف شود و به ورودی کاربر نیاز دارد. یک RewardedInterstitialAd فقط یک بار می تواند نشان داده شود. تماس‌های بعدی برای نمایش onAdFailedToShowFullScreenContent فعال می‌شوند.

یک آگهی زمانی که دیگر نیازی به دسترسی به آن نیست باید حذف شود. بهترین روش برای زمان فراخوانی dispose() در FullScreenContentCallback.onAdDismissedFullScreenContent و FullScreenContentCallback.onAdFailedToShowFullScreenContent است.

[اختیاری] تأیید اعتبار سمت سرور (SSV) تماس های برگشتی

برنامه‌هایی که به داده‌های اضافی در تماس‌های تأیید سمت سرور نیاز دارند، باید از ویژگی داده سفارشی تبلیغات پاداش استفاده کنند. هر مقدار رشته تنظیم شده روی یک شیء تبلیغاتی پاداش داده شده به پارامتر query custom_data در SSV ارسال می شود. اگر مقدار داده سفارشی تنظیم نشده باشد، مقدار پارامتر query custom_data در پاسخ تماس SSV وجود نخواهد داشت.

نمونه کد زیر نحوه تنظیم گزینه‌های SSV را پس از بارگیری تبلیغ بین‌داستانی با پاداش نشان می‌دهد:

RewardedInterstitialAd.load(
  adUnitId: "_adUnitId",
  request: AdManagerAdRequest(),
  rewardedInterstitialAdLoadCallback: RewardedInterstitialAdLoadCallback(
    onAdLoaded: (ad) {
      ServerSideVerificationOptions _options =
          ServerSideVerificationOptions(
              customData: 'SAMPLE_CUSTOM_DATA_STRING');
      ad.setServerSideOptions(_options);
      _rewardedInterstitialAd = ad;
    },
    onAdFailedToLoad: (error) {},
  ),
);

SAMPLE_CUSTOM_DATA_STRING با داده های سفارشی خود جایگزین کنید.