AdMob: mejor rendimiento en la actividad de Android

Tengo una aplicación para Android donde implementé anuncios de AdMob.

Mi código de diseño es muy simple: agregó AdView a 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}" /> 

En MyActivity en el método onCreate () estoy llamando:

  boolean showAdds = true; if(this.showAdds) { AdView adView = (AdView) findViewById(R.id.adMob1); adView.loadAd(new AdRequest()); } 

En algunos dispositivos Android más antiguos (probados por ejemplo en Samsung Galaxy S1) después de la implementación de AdMob, la aplicación es muy lenta. Pero cuando pongo la variable "showAdds" a "false" -> la carga de MyActivity es mucho mejor.

¿Hay alguna posibilidad de hacer la aplicación con admob más rápido?

Gracias por todos los comentarios.

Yo también he estado luchando con AdView aumentando el tiempo de carga de la aplicación. Mi solución fue mover el código del anuncio en un controlador de retardo (dentro de onCreate) …

 final Handler handler = new Handler(); handler.postDelayed(new Runnable() { @Override public void run() { AdRequest adRequest = new AdRequest.Builder().build(); adView.loadAd(adRequest); adView.bringToFront(); } }, 5000); 

Así que ahora la aplicación se inicia rápidamente y después de 5s se carga el anuncio. (Ps .bringToFront se utiliza porque mi diseño de aplicación utiliza una mezcla de XML y código, por lo que esto evita que adView se oculte)

El adView carga una vista web internamente en la primera puesta en marcha. Necesita crear tiendas de galletas, etc. Esto costará hasta 2 segundos. Si carga una vista web antes de que el adView se beneficie de ella (tal vez en su pantalla de inicio).

He encontrado esta sugerencia aquí: https://groups.google.com/forum/#!topic/google-admob-ads-sdk/LdUVIZ2AW6M

Para mejorar el rendimiento, utilice cualquiera de los ads:loadAdOnCreate="true" en la Implementación XML de su anuncio (Entonces no necesitará llamar a ese código java, todo se hará desde XML)

De lo contrario, puede eliminar los booleanos showadds. Tal vez eso está causando una desaceleración.

He implementado el código sin este código de showadds y funcionan bien en dispositivos inferiores con la adview rápida mostrada.

Más información aquí

Mover su adView initalization en el fondo Thread.

  onCreate(){ //..some other stuff Runnable runnableAdView = new Runnable() { @Override public void run() { initAdView(); } }; new Thread(runnableAdView).start(); } private void initAdView() { // Create the adView adView = new AdView(this, AdSize.BANNER, getResources().getString( R.string.admob_id)); // Lookup your LinearLayout assuming its been given LinearLayout layout = (LinearLayout) findViewById(R.id.sound_share_screen_ad_container); // Add the adView to it layout.addView(adView); // Initiate a generic request to load it with an ad AdRequest adRequest = new AdRequest(); //adRequest.addTestDevice(AdRequest.TEST_EMULATOR); //... adView.loadAd(adRequest); } 
  • En este momento, no admitimos la vinculación a una cuenta de AdWords administrada a través de AdWords Mi centro de clientes
  • Error de compilación de Xamarin (monodroid) + adMob
  • Anuncios Admob nativos en RecyclerView
  • Error de implementación de Admob
  • Cómo obtener mediante programación el ID de dispositivo para Admob?
  • El tamaño del anuncio y el ID de la unidad de anuncio deben configurarse antes de loadAd cuando se establezca mediante programación
  • ¿Qué es eCpm Tasa de llenado rpm
  • Vista web de Android con anuncio admob en la parte inferior
  • Integración de Android Studio AdMob con los servicios de Google Play
  • Admob no llena todo el ancho
  • Comprobación de que admob está trabajando antes de publicar
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.