Cómo añadir publicidad en Android

Una vez que hemos lanzado al mercado nuestra aplicación nos quedan un par de pasos muy importantes, promocionar la aplicación para conseguir el mayor número de descargas posibles y monetizarla. Para este punto se pueden utilizar varias técnicas, pero si no estamos seguros de que se vayan a comercializar por si sola podemos hacer que sea gratuita e incluir publicidad.

Para incluir publicidad en nuestra aplicación Google nos ayuda con la librería de Admob con la cual empezar a ganar un dinero extra será coser y cantar.




Lo primero que debemos hacer es registrarnos en Admob a través de la siguiente url: http://www.google.com/ads/admob/ Una vez registrados, accedemos a la web de Admob, primero en la pestaña Cuenta seleccionamos Detalles de pago y cubrimos el formulario con nuestros datos para poder recibir el dinero.

Ahora vamos a Sitios y aplicaciones y pulsamos sobre el botón agregar sitio/aplicación y en nuestro caso seleccionamos Android. Ahora en Sitios y aplicaciones aparecerán las aplicaciones que tenemos configuradas. Pinchando con el ratón sobre la que acabamos de crear en gestionar configuración nos dirá el ID de editor que necesitamos para incluir en nuestra aplicación Android.

El siguiente paso será descargar la librería para Android desde aquí https://developers.google.com/mobile-ads-sdk/download En nuestro caso seleccionamos la descarga para Android, pero podéis incluir esta publicidad en vuestras aplicaciones para iOS o Windows Phone.

Después de descargar el zip de la versión Android lo descomprimimos y dentro de él encontraremos un archivo .jar, en mi caso GoogleAdMobAdsSdk-6.3.1.jar. Lo copiamos en la carpeta libs de nuestro proyecto. Actualizamos nuestro proyecto, y dentro de la carpeta libs aparecerá nuestra librería. Ahora hacemos click derecho sobre ella y seleccionamos Build Path -> add to Build Path.

Vamos ahora a nuestro archivo AndroidManifest.xml y declaramos una Activity de este modo:


<activity android:name="com.google.ads.AdActivity"             
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" />


También añadimos permisos de internet y de acceso al estado de la red así:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

Lo siguiente que tenemos que hacer es abrir una de nuestras Activities donde queremos incluir la publicidad, y añadimos el siguiente código:

private AdView adView;
private LinearLayout lytMain;


@Override
public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.mylayout);

      lytMain = (LinearLayout) findViewById(R.id.lytMain);
      adView = new AdView(this, AdSize.BANNER, MI_ID_ADMOB);
      lytMain.addView(adView);
      adView.bringToFront();
      adView.loadAd(new AdRequest());
}

@Override
public void onDestroy(){
      if(adView != null)
         adView.destroy();
      super.onDestroy();
}


Nuestro layout va a ser muy simple, veamos como queda.


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/lytMain"
    xmlns:tools="http://schemas.android.com/tools"  android:layout_width="fill_parent" android:layout_height="fill_parent">
  
</LinearLayout>

Como veis no tiene absolutamente nada. Simplemente se instancia nuestro contenedor principal, en este caso un LinearLayout. Luego el objeto AdView al que se le pasa nuestro ID en el constructor, importante si queremos ser los beneficiarios de los ingresos por la publicidad y se añade al LinearLayout. En el onDestroy de la Activity liberamos recursos destruyendo la vista con la publicidad.

En mi caso la publicidad no apareció hasta pasados unos minutos, así que debeis tener paciencia.

Otra forma de hacerlo es incluir en nuestro layout el control AdView de esta forma:


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/lytMain"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads" android:layout_width="fill_parent" android:layout_height="fill_parent">
    <com.google.ads.AdView android:id="@+id/adView"
                         android:layout_width="wrap_content"
                         android:layout_height="wrap_content"
                         ads:adUnitId="MI_ID_ADMOB"
                         ads:adSize="BANNER"
                         ads:loadAdOnCreate="true"/>  
</LinearLayout>

Fijaros como en el LinearLayout se ha declarado la librería de admob para que reconozca el widget AdView. En el onCreate el código se simplifica de esta forma:


@Override
public void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.list);

     adView = ( AdView) findViewById(R.id.adView);
     adView.loadAd(new AdRequest());
}


Como veis es muy simple incluir publicidad en una aplicación. Lo difícil comienza ahora conseguir que la aplicación sea conocida y obtener ingresos a través de la publicidad con ella. Una buena estrategia adoptada por muchos desarrolladores es crear dos versiones de la misma aplicación, una gratuita con publicidad y otra de pago en la que se elimina la publicidad.

Comments are closed.