Домой Android разработкаJava, Kotlin и Android SDK Реклама внутри Android приложения

Реклама внутри Android приложения

by dilix
Реклама внутри Android приложения

Задача: показывать рекламу внутри мобильного приложения с помощью Google AdMob. Встраиваем рекламу внутрь нативных элементов или при переходе между экранами.

Внедрение AdMob в Android приложение

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

Тип рекламы: Баннер

AdView для баннера можно добавить прямо в xml, но, если это сделать, на некоторых устройствах не получится динамически установить AdUnitId — идентификатор объявления, которое нужно показать. Динамическая установка ID полезна, когда, например, вы при сборке, используя переменные, устанавливаете тестовые или реальные данные.

Баннер поддерживает разные размеры. В нашем примере будет использовать SMART_BANNER, который подстраивается под контейнер. По крайне мере должен.

mAdView = new AdView(itemView.getContext());
mAdView.setAdSize(AdSize.SMART_BANNER);
mAdView.setAdUnitId(BuildConfig.AD_BANNER);

Загрузка объявления в контейнер выполняется с помощью AdRequest. Builder позволяет задать настройки запроса, например такие, как тестовые device id для отображение рекламы, ключевые слова, дату рождения и т.д. Также можно подписаться на окончание загрузки объявления, например, чтобы убрать loader, если вы цените «отзывчивость» приложения.

mAdView.setAdListener(new AdListener() {
    @Override
    public void onAdLoaded() {
        super.onAdLoaded();
        progress.setVisibility(View.GONE);
        mAdView.setVisibility(View.VISIBLE);
    }
});

Тип рекламы: Межстраничное объявление

Объявление на полный экран, которое показывает во время перехода между экранами — хороший способ (с точки зрения разработчика) монетизации бесплатных приложений. Вы заставляете пользователя отвлечься на рекламу только в тот момент, когда он закончил действие в текущем контексте. Например закончил уровень, и теперь можно немного загрузить его рекламой.

Для отображения межстраничного объявления необходимо сначала его подготовить.

mInterstitialAd = new InterstitialAd(context);
mInterstitialAd.setAdUnitId(BuildConfig.AD_INTER);
mInterstitialAd.loadAd(new AdRequest.Builder().build());

Далее остается только показать объявление, проверив предварительно, что оно загружено.


if (mInterstitialAd.isLoaded()) {
    mInterstitialAd.setAdListener(new AdListener() {
        @Override
        public void onAdClosed() {
            // Load new ad to show next if needed
            mInterstitialAd.loadAd(new AdRequest.Builder().build());
            
            // your action after ad closed
        }
    });
    mInterstitialAd.show();
} else {
    Toast.makeText(itemView.getContext(), R.string.interst_not_loaded, Toast.LENGTH_SHORT).show();
}

Тип рекламы: С вознаграждением

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

Тип рекламы: Нативные улучшения

Такая реклама позволяет еще более нативно встроить рекламные блоки в ваше приложение. Он отличается от баннеров только тем, что данные вам приходят в «сыром» виде. После этого все что пришло, нужно отобразить в вашем приложении в вашем дизайне.

Удобный, но кропотливый способ отображения рекламы, который хорошо подходит для контентных приложений.

Реализованный пример показа рекламы AdMob внутри приложения

Исходники примера на GitHub встраивания рекламы в нативный RecyclerView

Исходники примера на Github открытия межстраничного рекламного объявления

Реклама от AdMob в Android приложении

 

Пример можно скачать и посмотреть в Google play

Примеры, обучения и практика в приложении на Google play

Реклама — лишь один из способов монетизации вашего Android приложения. Используйте его в комбинации, с, например, внутренними покупками.

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

Хочешь обсудить Android разработку?
Заходи к нам Вконтакте, на Facebook и в Телеграм!

Добавить комментарий

Может быть интересно

Этот сайт использует Cookie файлы для улучшения вашего пользовательского взаимодействия. Используя данный сайт вы соглашается с этим. Принять Читать

Политика конфиденциальности и Cookies