راه‌اندازی کیت توسعه نرم‌افزار نسل بعدی GMA

ادغام GMA Next-Gen SDK در برنامه اولین گام برای نمایش آگهی‌ها و کسب درآمد است. پس‌از ادغام کیت توسعه نرم‌افزار، می‌توانید قالب آگهی (مانند بومی یا ویدیو پاداشی) را انتخاب کنید و مراحل پیاده‌سازی آن را دنبال کنید.

قبل‌از شروع

برای آماده‌سازی برنامه‌تان، مراحل بخش‌های زیر را تکمیل کنید.

پیش‌نیازهای برنامه

  • مطمئن شوید فایل ساخت برنامه‌تان از مقادیر زیر استفاده می‌کند:

    • حداقل نسخه کیت توسعه نرم‌افزار 24 یا بالاتر
    • نسخه کیت توسعه نرم‌افزار کامپایل 35 یا بالاتر
  • برای برنامه‌های Kotlin، از حداقل نسخه Kotlin‏ ۱.۹ استفاده کنید.

پیکربندی برنامه

  1. در فایل تنظیمات Gradle، مخزن Maven متعلق به Google و مخزن مرکزی Maven را اضافه کنید:

    Kotlin

    pluginManagement {
      repositories {
        google()
        mavenCentral()
        gradlePluginPortal()
      }
    }
    
    dependencyResolutionManagement {
      repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
      repositories {
        google()
        mavenCentral()
      }
    }
    
    rootProject.name = "My Application"
    include(":app")

    Groovy

    pluginManagement {
      repositories {
        google()
        mavenCentral()
        gradlePluginPortal()
      }
    }
    
    dependencyResolutionManagement {
      repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
      repositories {
        google()
        mavenCentral()
      }
    }
    
    rootProject.name = "My Application"
    include ':app'
  2. وابستگی‌های GMA Next-Gen SDK را به فایل ساخت سطح برنامه‌تان اضافه کنید:

    Kotlin

    dependencies {
      implementation("com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:1.6.0")
    }

    Groovy

    dependencies {
      implementation 'com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:1.6.0'
    }
  3. روی اکنون همگام‌سازی شود کلیک کنید. برای جزئیات بیشتر درباره همگام‌سازی، به همگام‌سازی پروژه‌ها با فایل‌های Gradle مراجعه کنید.

مقداردهی اولیه GMA Next-Gen SDK

برای مقداردهی اولیه GMA Next-Gen SDK، MobileAds.initialize() را فراخوانی کنید. این باید در رشته پس‌زمینه فراخوانی شود، عدم انجام این کار ممکن است باعث خطای «برنامه پاسخ نمی‌دهد» (ANR) شود.

Kotlin

import com.google.android.libraries.ads.mobile.sdk.MobileAds
import com.google.android.libraries.ads.mobile.sdk.initialization.InitializationConfig
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch

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

    val backgroundScope = CoroutineScope(Dispatchers.IO)
    backgroundScope.launch {
      // Initialize GMA Next-Gen SDK on a background thread.
      MobileAds.initialize(
        this@MainActivity,
        // Sample Ad Manager app ID: ca-app-pub-3940256099942544~3347511713
        InitializationConfig.Builder("SAMPLE_APP_ID").build()
      ) {
        // Adapter initialization is complete.
      }
      // SDK initialization is complete. If you don't want to wait for bidding adapters to finish
      // initializing, start loading ads now.
    }
  }
}

جاوا

import com.google.android.libraries.ads.mobile.sdk.MobileAds;
import com.google.android.libraries.ads.mobile.sdk.initialization.InitializationConfig;

public class MainActivity extends AppCompatActivity {
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    new Thread(
            () -> {
              // Initialize GMA Next-Gen SDK on a background thread.
              MobileAds.initialize(
                  this,
                  // Sample Ad Manager app ID: ca-app-pub-3940256099942544~3347511713
                  new InitializationConfig.Builder("SAMPLE_APP_ID")
                      .build(),
                  initializationStatus -> {
                    // Adapter initialization is complete.
                  });
              // SDK initialization is complete. If you don't want to wait for bidding adapters to
              // finish initializing, start loading ads now.
            })
        .start();
  }
}

این روش کیت توسعه نرم‌افزار را مقداردهی اولیه می‌کند و پس‌از تکمیل مقداردهی اولیه GMA Next-Gen SDK و آداپتور، یا پس‌از مهلت ۳۰ ثانیه‌ای، شنونده تکمیل را فراخوانی می‌کند. این کار فقط یک‌بار باید انجام شود، ترجیحاً هنگام راه‌اندازی برنامه.

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

آگهی‌ها ممکن است توسط GMA Next-Gen SDK یا کیت‌های توسعه نرم‌افزار شریک واسطه‌گری درطول مقداردهی اولیه پیش‌بارگیری شوند. اگر لازم است از کاربران ساکن منطقه اقتصادی اروپا (EEA)، پادشاهی متحد (UK)، یا سوئیس رضایت دریافت کنید، پرچم‌های خاص درخواست را تنظیم کنید، مانند RequestConfiguration.TagForChildDirectedTreatment یا RequestConfiguration.TagForUnderAgeOfConsent، یا درغیراین‌صورت، قبل‌از بار کردن آگهی‌ها اقدام کنید، مطمئن شوید که این کار را قبل‌از مقداردهی اولیه GMA Next-Gen SDK انجام می‌دهید.

انتخاب قالب آگهی

GMA Next-Gen SDK اکنون وارد شده است و برای پیاده‌سازی آگهی آماده‌اید. Ad Manager چندین قالب آگهی مختلف ارائه می‌دهد، بنابراین می‌توانید قالبی را انتخاب کنید که با تجربه کاربری برنامه‌تان بهترین تناسب را دارد.

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

پیاده‌سازی آگهی‌های برنما

بینابینی

واحدهای آگهی بینابینی آگهی‌های تمام‌صفحه را در برنامه‌تان نشان می‌دهند. آن‌ها را در وقفه‌ها و انتقال‌های طبیعی در میانای برنامه‌تان قرار دهید، مثلاً پس‌از تکمیل سطح در برنامه بازی.

پیاده‌سازی آگهی‌های بینابینی

بومی

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

‫Google Ad Manager دو روش برای پیاده‌سازی آگهی‌های بومی ارائه می‌دهد: سبک‌های بومی و آگهی‌های بومی استاندارد ازطریق ارائه سفارشی.

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

پیاده‌سازی سبک‌های بومی پیاده‌سازی آگهی‌های بومی (پرداز سفارشی)

پاداش

واحدهای آگهی دارای پاداش به کاربران امکان می‌دهند بازی کنند، در نظرسنجی‌ها شرکت کنند، یا ویدیو تماشا کنند تا پاداش‌های درون‌برنامه‌ای مثل سکه، جان اضافی، یا امتیاز کسب کنند. می‌توانید پاداش‌های مختلفی را برای واحدهای آگهی مختلف تنظیم کنید و مقادیر پاداش و مواردی را که کاربر دریافت کرده است مشخص کنید.

پیاده‌سازی آگهی‌های پاداش‌دار

بینابینی پاداش‌دار

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

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

به‌جای پیام‌واره موافقت کردن در آگهی‌های دارای پاداش، آگهی‌های بینابینی پاداش‌دار به صفحه مقدمه‌ای نیاز دارند که پاداش را اعلام کند و به کاربران فرصت دهد درصورت تمایل، از آن انصراف دهند.

پیاده‌سازی آگهی‌های بینابینی پاداش‌دار

باز شدن برنامه

«باز کردن برنامه» قالب آگهی‌ای است که وقتی کاربران برنامه شما را باز می‌کنند یا به آن برمی‌گردند ظاهر می‌شود. آگهی روی صفحه بارگیری قرار می‌گیرد.

پیاده‌سازی آگهی‌های در صفحه باز شدن برنامه

تصویردرتصویر (نسخه بتا)

تصویر در تصویر

آگهی‌های تصویردرتصویر (PiP) آگهی را در پنجره‌ای شناور نمایش می‌دهند که روی محتوای صفحه باقی می‌ماند. این قالب به کاربران اجازه می‌دهد با برنامه‌تان تعامل داشته باشند درحالی‌که آگهی همچنان نمایان است.

پیاده‌سازی آگهی‌های تصویردرتصویر