This post is generalisation of several problems, that I've acquired during development of my Achievements application.

If you want to place small banner on every activity, then you should use such code:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"         xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"  
                android:orientation="vertical"
                android:id="@+id/category_main_layout"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent">
    <ScrollView
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/ScrollView01"
            android:layout_above="@+id/adView"
            android:layout_width="fill_parent"
            android:layout_height="match_parent"
            android:scrollbars="vertical">
        <!-- Your contorls here. Also, you can replace ScrollView with LinearLayout or everything you want to use in your application, but layout_above and layout_height should be always the same -->
    </ScrollView>
    <com.google.ads.AdView android:id="@+id/adView"
                           android:layout_height="wrap_content"
                           android:layout_width="wrap_content"
                           android:layout_alignParentBottom="true"
                           ads:adUnitId="ca-app-pub-3442808083502229/6570579623"
                           ads:adSize="BANNER"/>
</RelativeLayout>  

This construction will work for every layout, so you can use it with LinearLayout and ScrollView.

First most important thing that you should use is android:layout_above="@+id/adView". If your content is longer then screen, then this line will help you to set advertisement always on top of the screen, but it won't overflow other controls on your screen. It's useful when you've got dynamic controls or very long page.

Second important thing is android:layout_height="match_parent". It will grant you that content will be on top and ads will be on bottom, otherwise content will be right above the banner, so if content shorter than screen, you'll have space on top.

Also, look at this peace of code:

    public static void toggleAds ( Activity activity )
    {
        PreferencesManager preferencesManager = PreferencesManager.getInstance( activity.getApplicationContext() );
        boolean enable = ( preferencesManager.isAdEnabled() || preferencesManager.isAdRemovalPurchased() );
        if ( enable )
        {
            showAd( activity );
        }
        else
        {
            hideAd( activity );
        }
    }

This will help you to incapsulate advertisement and should be executed in every activity where you've got ads. I place it in my Commons class and transfer activity as parameter to the method, so I could control visivility of the ads when user turns it off during the session or purchases ads removal (first 2 lines of code; after purchase you could set application settings to apropriate values and always reset them after new installation of the application).

Here is some resources, that helped me a lot: Link 1, Link 2, Link 3.