ترکیب سفارشی رندر شده تبلیغات بومی و درخواست های تبلیغات بنری

با چند تغییر در کد خود، می توانید تبلیغات بومی و بنر را در درخواست های تبلیغاتی خود ترکیب کنید.

پیش نیازها

در حال بارگذاری آگهی

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

شی AdLoader همچنین می‌تواند به گونه‌ای پیکربندی شود که درخواست‌های تبلیغاتی را ایجاد کند که می‌تواند منجر به یک آگهی بنر یا یک آگهی بومی شود. افزودن یک OnAdManagerAdViewLoadedListener به AdLoader در حین ساخت آن مشخص می‌کند که تبلیغات بنری باید با تبلیغات بومی برای تکمیل درخواست رقابت کند.

کد زیر نحوه ساخت یک AdLoader را نشان می دهد که می تواند یک آگهی بومی یا بنری را در یک درخواست بارگیری کند:

جاوا

AdLoader adLoader = new AdLoader.Builder(context, "/6499/example/nativeandbanner")
    .forNativeAd(new NativeAd.OnNativeAdLoadedListener() {
      @Override
      public void onNativeAdLoaded(NativeAd nativeAd) {
        // Show the ad.
      }
    })
    .forAdManagerAdView(new OnAdManagerAdViewLoadedListener() {
      @Override
      public void onAdManagerAdViewLoaded(AdManagerAdView adView) {
        // Show the banner ad.
      }
    }, AdSize.BANNER, AdSize.MEDIUM_RECTANGLE)
    .withAdListener(new AdListener() {
      @Override
      public void onAdFailedToLoad(LoadAdError error) {
        // Handle the failure by logging, altering the UI, and so on.
      }
    })
    .withAdManagerAdViewOptions(new AdManagerAdViewOptions.Builder()
      // Methods in the AdManagerAdViewOptions.Builder class can be
      // used here to specify individual options settings.
      .build())
    .build();

کاتلین

val adLoader = AdLoader.Builder(this, "/6499/example/nativeandbanner")
    .forNativeAd { nativeAd ->
      // Show the ad.
    }
    .forAdManagerAdView({ adView ->
      // Show the banner ad.
    }, AdSize.BANNER, AdSize.MEDIUM_RECTANGLE)
    .withAdListener(object: AdListener() {
      override fun onAdFailedToLoad(adError: LoadAdError) {
        // Handle the failure by logging, altering the UI, and so on.
      }
    })
    .withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder()
      // Methods in the AdManagerAdViewOptions.Builder class can be
      // used here to specify individual options settings.
      .build())
    .build()

متد forAdManagerAdView() بالا AdLoader برای دریافت تبلیغات بنری آماده می کند. هنگام فراخوانی forAdManagerAdView() یک لیست با طول متغیر از اندازه های تبلیغات معتبر باید در کنار OnAdManagerAdViewLoadedListener مشخص شود.

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

تنظیم AdViewOptions

آخرین تابع موجود در ایجاد AdLoader در بالا، روش اختیاری دیگری است، withAdManagerAdViewOptions() :

جاوا

.withAdManagerAdViewOptions(new AdManagerAdViewOptions.Builder()
    // Methods in the AdManagerAdViewOptions.Builder class can be
    // used here to specify individual banner options settings.
    .build()

کاتلین

.withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder()
    // Methods in the AdManagerAdViewOptions.Builder class can be
    // used here to specify individual banner options settings.
    .build()

شی AdManagerAdViewOptions به ناشران امکان می دهد گزینه های خاصی را برای بنرهای بارگذاری شده توسط AdLoader تنظیم کنند، مانند:

setManualImpressionsEnabled()
گزارش نمایش دستی را برای رزروهای Google Ad Manager فعال می کند. برنامه‌هایی که از نمایش‌های دستی استفاده می‌کنند می‌توانند خودشان تعیین کنند که چه زمانی یک نمایش باید ثبت شود، و می‌توانند این کار را با فراخوانی AdManagerAdView.recordManualImpression() انجام دهند.