2017-01-31 15 views
0

Я действительно пытаюсь найти решение для адаптации размера баннера к устройству. У меня есть планшет Samsung 8" и Htc телефонАдаптация размера баннера AdMob до размера экрана

Существует одно приложение (радио), что именно делать то, что мне нужно

Таблетка:..

enter image description here

Телефон:

enter image description here

Ширина на планшете почти в два раза больше, чем на телефоне. То же самое с шрифтом

Я читал https://firebase.google.com/docs/admob/android/banner, но я не могу найти правильное решение.

Я пробовал:

AdView mAdView; 
    mAdView = (AdView) getActivity().findViewById(R.id.bac_adView); 
    mAdView.setVisibility(View.VISIBLE); 
    mAdView.setAdSize(AdSize.SMART_BANNER); 
    AdRequest adRequest = new AdRequest.Builder() 
      .addTestDevice("xxxxxxxxxxxxxxxxxxxxxxxxxx") 
      .build(); 
    mAdView.loadAd(adRequest); 

и я получаю ошибку: java.lang.IllegalStateException: Размер объявления может быть установлен только один раз на AdView.

Но я даже не уверен, что это правильный путь.

Любые указатели на некоторый код были бы замечательными!

+0

Admob имеет фиксированный размер и вы не сможете расширить или сжать его –

+0

любое другое решение? – narb

+0

Пожалуйста, следуйте моему ответу @narb –

ответ

1

Добавить AdView в файл макета, в котором вы хотите, чтобы показать баннер. Используйте атрибут smart banner size.

<com.google.android.gms.ads.AdView 
     android:id="@+id/adView" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     ads:adSize="SMART_BANNER" 
     ads:adUnitId="@string/ad_id"> 

Теперь загрузите AdView

AdView mAdView; 
    mAdView = (AdView) getActivity().findViewById(R.id.bac_adView); 
    AdRequest adRequest = new AdRequest.Builder() 
      .addTestDevice("xxxxxxxxxxxxxxxxxxxxxxxxxx") 
      .build(); 
    mAdView.loadAd(adRequest); 

Теперь ваш родительский компоновщик RelativeLayout затем использовать alignparentbottom атрибут атрибут в AdView исправить надстройку в нижней части макета.

android:layout_alignParentBottom="true" 

Это будет выглядеть более чище.

+0

SMART_BANNER - это трюк. Я не использую alignParentBottom, потому что баннер сверху. Благодарю. – narb

+0

Также для будущего взгляните на собственные объявления. –

+0

Я просто смотрю видео Google. Интересно, на этот раз мне нужен простой баннер, но спасибо за головы! – narb

0

AdView имеет фиксированный размер, и вы не сможете его развернуть или сжать. Вы должны показать интерстициальные объявлений, которая расширяется ДО размер экрана устройства

How to create android Ad Interstitial?

+0

, как говорит Льюис.интерстициальный слишком навязчивый. Я хотел бы оставить баннер, как решение, – narb

 Смежные вопросы

  • Нет связанных вопросов^_^