Домой 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 приложения. Используйте его в комбинации, с, например, внутренними покупками.

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

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

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

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

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

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