Адаптивные баннеры позволяют задать ширину объявления для определения его оптимального размера. Адаптивные баннеры также повышают эффективность, оптимизируя размер объявления для каждого устройства. Такой подход позволяет повысить производительность.
По сравнению с закреплёнными адаптивными баннерами, встроенные адаптивные баннеры больше, выше и имеют переменную, а не фиксированную высоту. Встроенные адаптивные баннеры имеют переменную высоту и могут занимать весь экран или достигать заданной вами максимальной высоты.
Вы размещаете встроенные адаптивные баннеры в прокручиваемом контенте, например:
Прежде чем начать
Прежде чем продолжить, убедитесь, что вы ознакомились с руководством по началу работы Баннерная реклама .
Внедрите адаптивные баннеры
В отличие от закрепленных адаптивных баннеров, встроенные баннеры-адаптеры загружаются с использованием размера встроенного адаптивного баннера. Чтобы создать встроенное адаптивное объявление, выполните следующие действия:
Укажите ширину используемого устройства или задайте собственную ширину, если вы не хотите использовать всю ширину экрана.
Чтобы получить встроенный адаптивный объект размера рекламы для выбранной ориентации, используйте статический метод в классе размера рекламы:
Следующий пример демонстрирует эти шаги:
Котлин
privatefunloadAd(){// Create an inline adaptive ad size. 320 is a placeholder value.// Replace 320 with your banner container width.valadSize=AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this,320)// Step 1 - Create a BannerAdRequest object with ad unit ID and size.valadRequest=BannerAdRequest.Builder("AD_UNIT_ID",adSize).build()// Step 2 - Load the ad.BannerAd.load(adRequest,object:AdLoadCallback<BannerAd>{overridefunonAdLoaded(ad:BannerAd){// Assign the loaded ad to the BannerAd object.bannerAd=ad// Step 3 - Call BannerAd.getView() to get the View and add it// to view hierarchy on the UI thread.activity?.runOnUiThread{binding.bannerViewContainer.addView(ad.getView(requireActivity()))}}overridefunonAdFailedToLoad(loadAdError:LoadAdError){bannerAd=null}})}
Ява
privatevoidloadAd(){// Create an inline adaptive ad size. 320 is a placeholder value.// Replace 320 with your banner container width.AdSizeadSize=AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this,320);// Step 1 - Create a BannerAdRequest object with ad unit ID and size.BannerAdRequestadRequest=newBannerAdRequest.Builder("AD_UNIT_ID",adSize).build();// Step 2 - Load the ad.BannerAd.load(adRequest,newAdLoadCallback<BannerAd>(){@OverridepublicvoidonAdLoaded(@NonNullBannerAdad){// Assign the loaded ad to the BannerAd object.bannerAd=ad;// Step 3 - Call BannerAd.getView() to get the View and add it// to view hierarchy on the UI thread.if(getActivity()!=null){getActivity().runOnUiThread(()->
binding.bannerViewContainer.addView(ad.getView(getActivity())));}}@OverridepublicvoidonAdFailedToLoad(@NonNullLoadAdErroradError){bannerAd=null;}});}
При внедрении адаптивных баннеров в ваше приложение обратите внимание на следующие моменты:
Размеры встроенных адаптивных баннеров лучше всего работают при использовании всей доступной ширины. В большинстве случаев этот размер равен полной ширине экрана используемого устройства или полной ширине родительского контента баннера. Вам необходимо знать ширину области, в которой будет размещаться объявление, ширину устройства, ширину родительского контента и применимые безопасные зоны.
Для работы с адаптивными размерами вам может потребоваться обновить или создать новые позиции. Подробнее .
Ориентировать размер встроенного адаптивного баннера
Для предварительной загрузки встроенного адаптивного баннера для определенной ориентации используйте следующие методы:
По умолчанию для встроенных адаптивных баннеров, созданных без значения maxHeight значение maxHeight равно высоте устройства. Чтобы ограничить высоту встроенного адаптивного баннера, используйте метод AdSize.getInlineAdaptiveBannerAdSize(int width, int maxHeight) .