Я реализую макет для маленького экранного устройства.
Для тестирования я использую Huawei Ideos U8150, который имеет разрешение 240x320.Возможно ли иметь AdView внутри LinearLayout, который сжимает AdView до ширины 180 пикселей.
Из-за небольшого разрешения у меня большая проблема с пространством. Поэтому я подумал, что могу разместить AdMob AdView и TextView внутри горизонтального LinearLayout.
Размер AdView будет занимать 3/4 от ширины и TextView 1/4.
В графическом макете все выглядит так, как ожидалось. Но когда я запускаю приложение на устройстве, он не отображает объявление внутри AdView. Я сделал фон AdView красным, поэтому я могу подтвердить, что AdView на самом деле виден. Он просто не отображает рекламу.
Я подтвердил с onReceiveAd
, что у меня есть реклама. И я печатаю рамку AdView в этом методе. Который журнал как источник: 0,38 ширина: 180,47. Выглядит хорошо для меня тоже.
Так что мне интересно, сможет ли AdMob AdView изменять размеры своих объявлений, чтобы они отображались правильно. Возможно, вещи, которые я стараюсь, просто невозможны.
Это мой макет:
<LinearLayout android:id="@+id/linearLayoutAds" android:background="#F0F0" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:layout_alignParentTop="true">
<com.google.ads.AdView
android:id="@+id/adView"
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_weight="3"
android:background="#FF00"
ads:adSize="BANNER"
ads:adUnitId="foobar"
ads:loadAdOnCreate="true"
ads:refreshInterval="30"
/>
<TextView
android:id="@+id/textView1"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_weight="1"
android:background="#F000"
android:gravity="right"
android:text="999"
android:textSize="45dip"
android:textStyle="bold"
/>
</LinearLayout>
большой. По крайней мере, для пользователей крошечных устройств. Они не видят рекламы :-) Просто обнаружили, что на [веб-сайте AdMob] (http://code.google.com/mobile/ads/docs/android/intermediate.html): «_ SDK запросит любой размер с запросом на создание AdView. ** Если на экране устройства недостаточно места для показа объявления, ничего не будет показано. ** _ " –
Объявления AdMob 320x50dp. Ваш телефон имеет разрешение 240x320, но это устройство с низкой плотностью (1dp = 0,75 px), поэтому оно действительно 320x426dp. В портретном режиме AdMob требует, чтобы вся ширина экрана отображалась для объявления, но в ландшафтном режиме для этого устройства требуется только 3/4 ширины. Еще раз взгляните на ваши журналы; если вы получили объявление, но его недостаточно, чтобы показать его, SDK будет записывать предупреждение, говорящее «Недостаточно места для показа рекламы! Желает <320,50>, имеет: <240,377>». –