شروع کنید

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

قبل از اینکه شروع کنی

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

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

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

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

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

  1. در فایل تنظیمات Gradle خود، مخزن Maven گوگل و مخزن مرکزی Maven را وارد کنید:

    کاتلین

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

    گرووی

    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 را به فایل ساخت سطح برنامه خود اضافه کنید:

    کاتلین

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

    گرووی

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

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

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

کاتلین

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.
      }
      // Other methods on MobileAds can now be called.
    }
  }
}

جاوا

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.
                  });
              // Other methods on MobileAds can now be called.
            })
        .start();
  }
}

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

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

انتخاب قالب تبلیغ

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

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

اجرای تبلیغات بنری

بینابینی

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

تبلیغات بینابینی را پیاده‌سازی کنید

بومی

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

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

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

پیاده‌سازی سبک‌های بومی پیاده‌سازی تبلیغات بومی (رندر سفارشی)

پاداش داده شده

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

تبلیغات جایزه‌دار (Rewarded Ads) را پیاده‌سازی کنید

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

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

برخلاف تبلیغات جایزه‌دار، کاربران برای مشاهده‌ی تبلیغات بینابینی جایزه‌دار ملزم به انتخاب نیستند.

به جای دکمه‌ی انتخاب در تبلیغات جایزه‌دار، تبلیغات بینابینی جایزه‌دار به یک صفحه‌ی معرفی نیاز دارند که جایزه را اعلام می‌کند و به کاربران این امکان را می‌دهد که در صورت تمایل انصراف دهند.

تبلیغات بینابینی پاداش‌دار را پیاده‌سازی کنید

برنامه باز است

باز شدن برنامه، نوعی تبلیغ است که هنگام باز شدن یا بازگشت کاربران به برنامه شما ظاهر می‌شود. این تبلیغ، صفحه بارگذاری را می‌پوشاند.

تبلیغات باز برنامه را پیاده سازی کنید