دسترسی مستقیم را برای Ad Exchange تنظیم کنید

کیت توسعه نرم‌افزاری تبلیغات موبایل گوگل (Google Mobile Ads SDK) از کسب درآمد از برنامه‌ها با استفاده از ویژگی Ad Exchange پشتیبانی می‌کند. این راهنما به شما نشان می‌دهد که چگونه برنامه‌های خود را برای همه قالب‌های تبلیغاتی پشتیبانی شده توسط Ad Exchange پیکربندی کنید.

پیش‌نیازها

برنامه خود را برای دسترسی به Ad Exchange پیکربندی کنید

شناسه برنامه مدیریت تبلیغات خود ( که در رابط کاربری مدیریت تبلیغات مشخص شده است ) را از طریق یک تگ <meta-data> با android:name="com.google.android.gms.ads.APPLICATION_ID" به فایل AndroidManifest.xml برنامه خود اضافه کنید. برای android:value ، شناسه برنامه مدیریت تبلیغات خود را که بین علامت نقل قول قرار دارد، وارد کنید.

<manifest>
    <application>
        <!-- Sample Ad Manager app ID: ca-app-pub-3940256099942544~3347511713 -->
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
    </application>
</manifest>

همچنین توجه داشته باشید که عدم اضافه کردن تگ <meta-data> همانطور که در بالا نشان داده شده است، منجر به خرابی با پیام زیر می‌شود:

Missing application ID.

در مرحله بعد، می‌توانید SDK تبلیغات موبایلی گوگل را راه‌اندازی کرده و یک قالب تبلیغاتی را برای نمایش انتخاب کنید. بقیه این راهنما قالب بنر را پیاده‌سازی می‌کند تا نحوه بارگذاری یک تبلیغ از Ad Exchange را نشان دهد. همین مراحل را می‌توان برای هر قالب تبلیغاتی پشتیبانی شده توسط SDK تبلیغات موبایلی گوگل اعمال کرد.

بارگذاری تبلیغ از Ad Exchange

شما می‌توانید به جای شناسه واحد تبلیغاتی، از کد ویژگی وب Ad Exchange به همراه یک اسلش به جلو استفاده کنید. برای مثال، ca-mb-app-pub-5629679302779023/ .

مثال زیر کد ویژگی وب Ad Exchange را به درخواست تبلیغات بنری اضافه می‌کند:

کاتلین

val adRequest = BannerAdRequest.Builder("ca-mb-app-pub-5629679302779023/", AdSize.BANNER).build()

BannerAd.load(
  adRequest,
  object : AdLoadCallback<BannerAd> {
    override fun onAdLoaded(ad: BannerAd) {
      bannerAd = ad
      activity?.runOnUiThread {
        binding.bannerViewContainer.addView(ad.getView(requireActivity()))
      }
    }
  }
)

جاوا

BannerAdRequest adRequest = new BannerAdRequest.Builder("ca-mb-app-pub-5629679302779023/",
    AdSize.BANNER).build();

BannerAd.load(
    adRequest,
    new AdLoadCallback<BannerAd>() {
      @Override
      public void onAdLoaded(@NonNull BannerAd ad) {
        bannerAd = ad;
        runOnUiThread(
            () -> binding.bannerViewContainer.addView(ad.getView(MainActivity.this)));
      }
    });

توجه داشته باشید که عدم اضافه کردن یک اسلش به جلو در کد ویژگی وب Ad Exchange منجر به خطای درخواست تبلیغ با پیام زیر می‌شود:

Invalid Request. Cannot determine request type. Is your ad unit id correct?

همچنین می‌توانید کد ویژگی وب Ad Exchange را به یک واحد تبلیغاتی تبدیل کنید. پس از آن، از رابط کاربری Ad Manager برای تولید یک برچسب Ad Exchange استفاده کنید و آن را در برنامه خود کپی کنید. برچسب تولید شده باید دارای کد ویژگی وب Ad Exchange باشد و به دنبال آن شناسه‌های واحد تبلیغاتی فرزند بدون اسلش به جلو قرار گیرد، به عنوان مثال: ca-mb-app-pub-5629679302779023/banner .

همین! برنامه شما اکنون آماده بارگیری و نمایش تبلیغات بنری از Ad Exchange است.

علاوه بر این، می‌توانید با دنبال کردن راهنماهای مربوطه، از یک ویژگی وب Ad Exchange برای بارگیری و نمایش سایر قالب‌های تبلیغاتی از Ad Exchange استفاده کنید:

(فقط ناشران اروپایی مورد تایید) اضافه کردن کف قیمت‌ها

شما می‌توانید درخواستی برای ویژگی «کف قیمت» ارسال کنید .

پس از تأیید، می‌توانید با استفاده از پارامترهای pubf و pvtf به ترتیب یک طبقه عمومی یا طبقه خصوصی را در درخواست تبلیغ بگنجانید. در مثال کد زیر، "123" را با قیمت‌های طبقه به میکرو و ارز پیش‌فرض شبکه خود جایگزین کنید. مثالی از نحوه اعمال میکرو: اگر ارز پیش‌فرض شما USD است، وارد کردن "6000000" معادل 6.00 دلار است.

کاتلین

val extras = Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");

val request = AdRequest.Builder("ca-mb-app-pub-5629679302779023/")
    .setGoogleExtrasBundle(extras)
    .build();

جاوا

Bundle extras = new Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");

AdRequest request = new AdRequest.Builder("ca-mb-app-pub-5629679302779023/")
    .setGoogleExtrasBundle(extras)
    .build();