Как задавать стиль макетов объявлений с помощью нативных шаблонов

Выберите платформу: iOS Flutter Android (устаревшая версия)

Скачать нативные шаблоны

Нативные объявления можно настраивать, чтобы они лучше подходили для пользователей. Удобство для пользователей повышает вовлеченность и доходность.

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

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

Наши встроенные шаблоны предоставляются в виде модуля Android Studio, поэтому их легко добавить в проект и использовать по своему усмотрению.

Размеры шаблонов

Есть два шаблона: маленький и средний. Оба они используют класс TemplateView и имеют фиксированное соотношение сторон. Они будут масштабироваться, чтобы заполнить ширину родительских представлений.

Малый шаблон

@layout/gnt_small_template_view

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

Шаблон среднего размера

@layout/gnt_medium_template_view

Шаблон среднего размера предназначен для показа на половине или трех четвертях страницы, но также может использоваться в фидах. Она подходит для целевых и заставочных страниц.

Вы можете экспериментировать с размещением. Конечно, вы также можете изменить исходный код и XML-файлы в соответствии со своими требованиями.

Как установить шаблоны нативных объявлений

Чтобы установить встроенные шаблоны, просто скачайте ZIP-файл (используя вариант Клонировать или скачать на GitHub) и импортируйте модуль в существующий проект Android Studio.

  1. Выберите File > New > Import Module (Файл > Создать > Импортировать модуль).

  2. Выберите папку nativetemplates.

    импортировать нативный шаблон;

  3. Добавьте в файл build.gradle на уровне приложения следующую строку:

    dependencies {
            ...
            implementation project(':nativetemplates')
            ...
    }
    

Как использовать шаблоны нативных объявлений

Вы можете использовать шаблон в любом XML-файле макета, как и любую другую группу представлений.

Как добавить шаблон в макет

Чтобы использовать шаблоны, выполните следующие действия:

  1. Сначала добавьте шаблон в макет.

    <LinearLayout
       xmlns:android="http://schemas.android.com/apk/res/android"
       xmlns:app="http://schemas.android.com/apk/res-auto"
       xmlns:tools="http://schemas.android.com/tools"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       tools:context=".MainActivity"
       tools:showIn="@layout/activity_main" >
    
    <!--  This is your template view -->
    <com.google.android.ads.nativetemplates.TemplateView
       android:id="@+id/my_template"
       <!-- this attribute determines which template is used. The other option is
        @layout/gnt_medium_template_view -->
       app:gnt_template_type="@layout/gnt_small_template_view"
       android:layout_width="match_parent"
       android:layout_height="match_parent" />
    
    ...
    </LinearLayout>
    
  2. Затем вам нужно передать шаблону нативное объявление при его загрузке:

    MobileAds.initialize(this);
    AdLoader adLoader = new AdLoader.Builder(this, "/21775744923/example/native")
        .forNativeAd(new NativeAd.OnNativeAdLoadedListener() {
            @Override
            public void onNativeAdLoaded(NativeAd nativeAd) {
                NativeTemplateStyle styles = new
                  NativeTemplateStyle.Builder().withMainBackgroundColor(background).build();
                TemplateView template = findViewById(R.id.my_template);
                template.setStyles(styles);
                template.setNativeAd(nativeAd);
            }
         })
         .build();
    
    adLoader.loadAd(new AdManagerAdRequest.Builder().build());
    

Ключи словаря стилей

Существует два способа задать стиль шаблона: с помощью традиционной разметки XML и с помощью объекта NativeTemplateStyle.Builder. В приведенном выше фрагменте кода показано, как использовать объект NativeTemplateStyle.Builder, чтобы задать основной цвет фона, но есть и другие варианты. Ниже перечислены все доступные методы построителя. Конструктор возвращает объект NativeTemplateStyle, который переопределяет все стили макета XML. В макетах XML gnt_small_template.xml и gnt_medium_template.xml используются те же параметры стиля Android, которые вам уже знакомы.

Методы конструктора для нативного стиля шаблона
withCallToActionTextTypeface Typeface callToActionTextTypeface

Шрифт призыва к действию.

withCallToActionTextSize float callToActionTextSize

Размер текста призыва к действию.

withCallToActionTypefaceColor int callToActionTypefaceColor

Цвет текста призыва к действию.

withCallToActionBackgroundColor ColorDrawable callToActionBackgroundColor

Цвет фона призыва к действию.

withPrimaryTextTypeface Typeface primaryTextTypeface

Шрифт первой строки текста.

withPrimaryTextSize float primaryTextSize

Размер первой строки текста.

withPrimaryTextTypefaceColor int primaryTextTypefaceColor

Цвет первой строки текста.

withPrimaryTextBackgroundColor ColorDrawable primaryTextBackgroundColor

Цвет фона первой строки текста.

withSecondaryTextTypeface Typeface secondaryTextTypeface

Шрифт второй строки текста.

withSecondaryTextSize float secondaryTextSize

Размер второй строки текста.

withSecondaryTextTypefaceColor int secondaryTextTypefaceColor

Цвет текста во второй строке.

withSecondaryTextBackgroundColor ColorDrawable secondaryTextBackgroundColor

Цвет фона второй строки текста.

withTertiaryTextTypeface Typeface tertiaryTextTypeface

Шрифт текста в третьей строке.

withTertiaryTextSize float tertiaryTextSize

Размер текста в третьей строке.

withTertiaryTextTypefaceColor int tertiaryTextTypefaceColor

Цвет текста в третьей строке.

withTertiaryTextBackgroundColor ColorDrawable tertiaryTextBackgroundColor

Цвет фона третьей строки текста.

withMainBackgroundColor ColorDrawable mainBackgroundColor

Основной цвет фона.

Впечатления

Мы создали нативные шаблоны, чтобы вы могли быстро разрабатывать нативные объявления. Вы можете добавить новые шаблоны или функции в наш репозиторий на GitHub. Отправьте нам pull-запрос, и мы его рассмотрим.