I have android application where I implemented AdMob ads.
My layout code is very simple - added AdView into LinearLayout:
<com.google.ads.AdView
android:id="@+id/adMob1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
ads:adSize="BANNER"
ads:adUnitId="{AdID}" />
In MyActivity in onCreate() method I am calling:
boolean showAdds = true;
if(this.showAdds) {
AdView adView = (AdView) findViewById(R.id.adMob1);
adView.loadAd(new AdRequest());
}
On some older android devices (tested for example on Samsung Galaxy S1) after AdMob implementation the app is very very slow. But when I set "showAdds" variable to "false" -> the loading of MyActivity is much better.
Is there any possibility to make the application with admob faster?
Thank you for all comments.
I too have been struggling with AdView increasing app load time. My solution was to move the ad code into a delay handler (within onCreate)…
So now the app starts quickly and then after 5s the adview is loaded. (p.s. .bringToFront is used because my app layout uses a mixture of XML and code, so this stops adView from being hidden)
Move your adView initalization into background Thread.
The adView loads a webview internally on first startup. It needs to create cookie stores etc. This will cost up to 2 seconds. If you load a webview before the adView it will benefit from it (maybe on your start up screen).
I found this hint here: https://groups.google.com/forum/#!topic/google-admob-ads-sdk/LdUVIZ2AW6M
To improve the performance, use either
ads:loadAdOnCreate="true"
in the XML Implementation of your ad ( Then you wont need to call that java code, everything will be done from XML)Else you can remove the boolean showadds. Maybe that is causing slowdown.
I have implemented the code without this showadds code and they work fine on Lower devices with fast adview shown.
More Info Here