Вы гарантируете, что ваше объявление не пересекается с контентом, используя LinearLayouts и layout_weight что-то вроде этого.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/backgroundColor"
android:orientation="vertical"
android:layout_weight="1"
android:fitsSystemWindows="true">
<include layout="@layout/detail_activity_bar"></include>
<SomeView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/home_grid"
android:layout_weight="0.9"
android:layout_width="match_parent"
android:layout_height="0dp"/>
<com.google.android.gms.ads.AdView
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/adViewGallery"
android:layout_weight="0.1"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_gravity="center"
ads:adSize="BANNER"
ads:adUnitId="@string/home_banner">
</com.google.android.gms.ads.AdView>
</LinearLayout>
adSize BANNER хорошо подходит для большинства устройств, в то время как SMART_BANNER действительно пересекается с мобильными экранами большего размера согласно мой опыт.
с вышеприведенной реализацией вы никогда не получите нарушений правил баннеров