Использование нативной рекламы позволяет персонализировать объявления, что приводит к улучшению пользовательского опыта. Улучшенный пользовательский опыт может повысить вовлеченность и увеличить общую прибыль.
Чтобы максимально эффективно использовать нативную рекламу, важно оформить макеты объявлений так, чтобы они органично вписывались в ваше приложение. Для начала мы создали нативные шаблоны.
Нативные шаблоны — это готовые шаблоны для ваших нативных объявлений, разработанные для быстрой реализации и легкой модификации. С помощью нативных шаблонов вы можете реализовать свое первое нативное объявление всего за несколько минут и быстро настроить внешний вид без большого количества кода. Вы можете разместить эти шаблоны где угодно, например, в элементе RecyclerView в ленте новостей, в диалоговом окне или в любом другом месте вашего приложения.
Наши шаблоны для нативных приложений предоставляются в виде модуля Android Studio, поэтому их легко включить в свой проект и использовать по своему усмотрению.
Размеры шаблонов
Доступны два шаблона: малый и средний. Оба используют класс TemplateView и имеют фиксированное соотношение сторон. Они масштабируются, заполняя ширину родительских элементов.
Небольшой шаблон
@layout/gnt_small_template_view
Этот небольшой шаблон идеально подходит для отображения рекламы в ленте или в любом другом случае, когда вам нужно длинное прямоугольное рекламное объявление. Например, вы можете использовать его для рекламы в ленте.

Шаблон среднего размера
@layout/gnt_medium_template_view
Шаблон среднего размера предназначен для просмотра на половине или трех четвертях страницы, но также может использоваться в лентах новостей. Он хорошо подходит для целевых страниц или страниц-заставок.
Не стесняйтесь экспериментировать с размещением. Конечно, вы также можете изменить исходный код и XML-файлы в соответствии со своими требованиями.

Установка шаблонов нативной рекламы
Для установки нативных шаблонов просто скачайте zip-файл (используя опцию «Клонировать или скачать » на GitHub) и импортируйте модуль в существующий проект Android Studio.
Выберите Файл > Создать > Импорт модуля .
Выберите папку
nativetemplates.
Добавьте следующую строку в файл
build.gradleвашего приложения:dependencies { ... implementation project(':nativetemplates') ... }
Использование шаблонов нативной рекламы
Этот шаблон можно использовать в любом XML-файле макета, как и любую другую группу представлений.

Использование шаблонов — это двухэтапный процесс:
Во-первых, вам необходимо включить шаблон в свой макет.
<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>Далее вам нужно указать в шаблоне вашу нативную рекламу при загрузке:
MobileAds.initialize(this); AdLoader adLoader = new AdLoader.Builder(this, "ca-app-pub-3940256099942544/2247696110") .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 AdRequest.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Основной цвет фона. |
Способствовать
Мы создали Native Templates, чтобы помочь вам быстро разрабатывать нативную рекламу. Мы будем рады, если вы внесёте свой вклад в наш репозиторий GitHub , добавив новые шаблоны или функции. Отправьте нам запрос на слияние, и мы его рассмотрим.