Специальные медийные нативные форматы и Open Measurement

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

Требования

Прежде чем продолжить, выполните следующие действия:

Интеграция

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

Если вы используете специальные форматы нативных объявлений с видеообъектом, вам не нужно следовать инструкциям из этого руководства. Mobile Ads SDK отслеживает видимость видеообъекта от вашего имени.

Как зарегистрировать представление и начать сбор данных

Чтобы включить открытое отслеживание в специальном нативном объявлении, сначала покажите объявление, а затем зарегистрируйте просмотр специального объявления с помощью объекта DisplayOpenMeasurement, связанного со специальным нативным объявлением. Объект DisplayOpenMeasurement предоставляет метод setView() для регистрации представления контейнера в Open Measurement.

Вам также нужно явно указать SDK, что нужно начать отслеживать объявление. Для этого вызовите метод start() для объекта DisplayOpenMeasurement вашего нативного объявления. Метод start() необходимо вызывать из основного потока, и последующие вызовы не имеют эффекта.

Вот как она теперь выглядит:

Kotlin

@MainThread
private fun displayCustomNativeAd(
  customNativeAd: CustomNativeAd,
  nativeAdViewContainer: FrameLayout,
) {
  // TODO: Render the custom native ad inside the nativeAdViewContainer.

  // ...

  // Start measuring the ad view.
  val displayOpenMeasurement = customNativeAd.getDisplayOpenMeasurement()
  if (displayOpenMeasurement != null) {
    displayOpenMeasurement.setView(nativeAdViewContainer)
    displayOpenMeasurement.start()
  }
}

Java

@MainThread
private void displayCustomNativeAd(
    CustomNativeAd customNativeAd, FrameLayout nativeAdViewContainer) {
  // TODO: Render the custom native ad inside the nativeAdViewContainer.

  // ...

  // Start measuring the ad view.
  DisplayOpenMeasurement displayOpenMeasurement = customNativeAd.getDisplayOpenMeasurement();
  if (displayOpenMeasurement != null) {
    displayOpenMeasurement.setView(nativeAdViewContainer);
    displayOpenMeasurement.start();
  }
}

Показ объявления должен предшествовать регистрации просмотра. Информация о том, как показывать объявления, приведена в статье Специальные форматы нативных объявлений.

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

Сертификация IAB

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