Как настроить GMA Next-Gen SDK

Интеграция GMA Next-Gen SDK в приложение – это первый шаг к показу рекламы и получению дохода. После интеграции SDK вы можете выбрать формат объявления (например, нативное или видеообъявление с вознаграждением) и выполнить инструкции по его реализации.

Подготовка

Чтобы подготовить приложение, выполните нужные действия в разделах, указанных ниже.

Требования к приложению

  • Убедитесь, что в файле сборки приложения приведены значения, указанные ниже.

    • Минимальная версия SDK: 24 или выше
    • Версия SDK для компиляции: 35 или выше
  • Для приложений на Kotlin используйте версию не ниже 1.9.

Настройка приложения

  1. Добавьте репозиторий Google Maven и центральный репозиторий Maven в файл настроек Gradle:

    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.5.0")
    }

    Groovy

    dependencies {
      implementation 'com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:1.5.0'
    }
  3. Нажмите Синхронизировать. Подробнее о синхронизации проектов с файлами Gradle…

Инициализация GMA Next-Gen SDK

Вызовите MobileAds.initialize(), чтобы инициализировать GMA Next-Gen SDK. Этот метод должен вызываться в фоновом потоке, иначе может возникнуть ошибка "Приложение не отвечает" (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.
    }
  }
}

Java

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();
  }
}

Этот метод инициализирует SDK и вызывает прослушиватель завершения после того, как инициализация GMA Next-Gen SDK и адаптера будет завершена или по истечении 30-секундного тайм-аута. Это нужно сделать только один раз, желательно при запуске приложения.

Если вы используете медиацию, дождитесь вызова обработчика завершения, прежде чем загружать объявления. Это гарантирует, что все адаптеры медиации будут инициализированы.

Объявления могут быть предварительно загружены SDK GMA Next-Gen SDK или партнерских сетей медиации при инициализации. Если вам нужно получить согласие пользователей из Европейской экономической зоны (ЕЭЗ), Великобритании или Швейцарии, установить какие-либо флаги для запросов, например RequestConfiguration.TagForChildDirectedTreatment или RequestConfiguration.TagForUnderAgeOfConsent, или выполнить другие действия перед загрузкой объявлений, сделайте это до инициализации GMA Next-Gen SDK.

Выберите формат объявления

GMA Next-Gen SDK импортирован, и вы можете добавить объявление. В Менеджере рекламы доступно множество форматов объявлений, поэтому вы можете выбрать тот, который лучше всего подходит для вашего приложения.

В рекламных блоках для баннеров показываются прямоугольные объявления, занимающие часть макета приложения. Они могут обновляться автоматически с заданным интервалом. В таком случае через определенные промежутки времени пользователь будет видеть новые объявления, даже не переходя на другой экран приложения. Такие форматы объявлений очень легко добавить.

Как реализовать баннеры

Межстраничное объявление

Межстраничные рекламные блоки занимают весь экран устройства. Их рекомендуется показывать в тот момент, когда пользователь переходит между страницами приложения, например после завершения уровня в мобильной игре.

Как размещать межстраничные объявления

Стандартное

Нативные объявления – это объявления, в которых вы можете настраивать способ представления объектов, таких как заголовки и призывы к действию, в своих приложениях. Вы можете самостоятельно настроить стиль объявления, чтобы оно выглядело естественно и ненавязчиво и не мешало пользователям.

В Google Менеджере рекламы есть два способа реализации нативных объявлений: нативные стили и стандартные нативные объявления со специальной обработкой.

Нативные стили были разработаны, чтобы упростить внедрение нативных объявлений. Это отличный выбор, если вы только начинаете работать с этим форматом. Специальная обработка позволяет создавать объявления, которые будут выглядеть именно так, как вам нужно.

Как реализовать нативные стили Как реализовать нативные объявления (специальная обработка)

Бонус предоставлен

Рекламные блоки для объявлений с вознаграждением позволяют пользователям играть в игры, проходить опросы или смотреть видео, чтобы получать вознаграждение в приложении, например монеты, дополнительные жизни или баллы. Для разных рекламных блоков можно назначать разные вознаграждения, а также указывать их ценность и полученные пользователем предметы.

Как реализовать объявления с вознаграждением

Межстраничные объявления с вознаграждением

Межстраничные объявления с вознаграждением – это новый формат объявления с вознаграждением, который позволяет предлагать награды, например монеты или дополнительные жизни, за объявления, которые показываются автоматически при естественных переходах внутри приложения.

В отличие от обычных объявлений с вознаграждением для показа межстраничных объявлений с вознаграждением не требуется согласие пользователя.

Вместо запроса согласия в объявлениях с вознаграждением, межстраничные объявления с вознаграждением требуют вступительного экрана, который объявляет о вознаграждении и дает пользователям возможность отказаться, если они хотят это сделать.

Как реализовать межстраничные объявления с вознаграждением

Объявления при запуске приложения

Объявления при запуске приложения – это формат объявления, который показывается, когда пользователь открывает приложение или снова на него переключается. При этом объявление накладывается на экран загрузки.

Как реализовать объявления при запуске приложения

Картинка в картинке (бета)

Картинка в картинке

Объявления типа "Картинка в картинке" показываются в плавающем окне поверх контента на экране. Этот формат позволяет пользователям взаимодействовать с приложением, пока объявление остается видимым.

Как реализовать показ объявлений в режиме "картинка в картинке"