Publicidad AdSense en aplicaciones Android

Una vez que hemos logrado realizar una aplicación y tenemos las intenciones de hacerla publica ya sea en Google Play o en cualquier otro Market de Android, una buena opción para monetizar la misma y tener algo de ingresos es utilizando el servicio Adsense de Google. Si bien el mismo no está pensado para esto, porque además google tiene AdMob que es para móviles, a mi me resulto sencillo agregar el código de adsense en las aplicaciones.

 

Primer paso:

Debemos tener un cuenta de Adsense lógicamente, es la misma que utilizamos para poner publicidad en nuestra web o blog, el que no tenga puede seguir esta pagina.

https://www.google.com/adsense/v3/signup?destination=/adsense/v3/home&utm_content=nsufv1

Segundo paso:

Una vez dentro del panel, vamos a crear un bloque de anuncio, como el mismo va a estar destinado a los móviles debemos elegir un bloque que se adecue a los dispositivos.

Para esto en “MIS ANUNCIOS” elegimos un bloque del tipo “Banner de 320×50 para móviles”

 

 

Luego de hacer los ajustes, debemos obtener el código que vamos a utilizar en nuestro banner de publicidad

Por ejemplo este:

<script type=”text/javascript”><!–
google_ad_client = “ca-pub-8812504060757712″;
/* 300×250, creado 18/08/11 */
google_ad_slot = “9024444724″;
google_ad_width = 300;
google_ad_height = 250;
//–>
</script>
<script type=”text/javascript”
src=”http://pagead2.googlesyndication.com/pagead/show_ads.js”>
</script>

Tercer paso:

Debemos crear una pagina web sencilla, pero que no tenga nada de bordes ni margenes y que solo contenga ese codigo.

<html>
<head></head>
<body leftmargin=”0″ topmargin=”0″ marginwidth=”0″ marginheight=”0″ rightmargin=”0″ STYLE=’background-color:transparent’>
<script type=”text/javascript”><!–
google_ad_client = “ca-pub-8812504060757712″;
/* android_iptv */
google_ad_slot = “6146178814″;
google_ad_width = 320;
google_ad_height = 50;
//–>
</script>
<script type=”text/javascript”
src=”http://pagead2.googlesyndication.com/pagead/show_ads.js”>
</script>
</body>

Guardamos la pagina con algún nombre, por ejemplo “banner.html”

Cuarto paso:

En nuestra aplicación, tenemos que agregar un WebView con estas características:

    <WebView
android:id=”@+id/webviewpublif”
android:layout_width=”320dip”
android:layout_height=”50dip”
android:layout_below=”@+id/linearLayout1″
android:layout_centerHorizontal=”true”
android:scrollbars=”none” />

Quinto paso:

En la clase para la aplicación en el evento “oncreate” debemos colocar lo siguiente:

//cargo el banner
banner1 = (WebView) findViewById(R.id.webviewpublif);
banner1.getSettings().setJavaScriptEnabled(true);
banner1.getSettings().setPluginsEnabled(true);
banner1.setBackgroundColor(Color.TRANSPARENT);

banner1.setWebViewClient(new WebViewClient() {
@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
//Log.i(“WEB_VIEW_TEST”, “error code:” + errorCode);
//super.onReceivedError(view, errorCode, description, failingUrl);
banner1.setVisibility(View.INVISIBLE);
}

@Override //cuando cambia la url (cuando se hace clic dentro)
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// TODO Auto-generated method stub

if (!url.startsWith(“http://mipagina/banner.html”)) {

//Toast.makeText(getApplicationContext(), “URL:” + url, Toast.LENGTH_SHORT).show();

//si la url cambio, tomo la nueva y abro el navegador.
Uri uri = Uri.parse(url);
startActivity( new Intent( Intent.ACTION_VIEW, uri ) );

return true;
}

return super.shouldOverrideUrlLoading(view, url);
}

});

banner1.loadUrl(“http://mipagina/banner.html”);

Y con esto debería funcionar, no se olviden de agregar los permisos de internet para la aplicación.

Así es como quedaría.

Social tagging: > >

8 Responses to Publicidad AdSense en aplicaciones Android

  1. joseluis dice:

    Hola, he intentado usarlo así como pones, pero he tenido que añadir algunas librerias, y poner en banner1 como final banner1 … algunas modificaciones.

    La cosa es que entro en mi aplicación, pero nada más entro me dice que elija el explorador que quiero, y me lleva a la web que he puesto… esto como se puede evitar. gracias.

    • admin dice:

      nunca me ha pasado eso, tal vez tendrias q ver quien tiene el foco, puede que sea el banner el primero en tener el foco y por eso sucede. Yo lo hago con todas mis aplicaciones y siempre me funciona, y no he tenido q añadir ninguna libreria mas que importar los recursos import android.webkit.WebView;
      import android.webkit.WebViewClient; pero nada mas q eso

  2. Mireia dice:

    Hola,

    muy bueno tu artículo aunque, en las condiciones de uso de Google Adsense dicen lo siguiente:

    “The use of AdSense for mobile in a mobile application is a violation of AdSense policies. A mobile application constitutes any downloadable application, even if a WebView is used to display the ad. Any AdSense for mobile ad units found in mobile applications will be disabled. If you’re looking for an advertising solution for your mobile application, please sign up for AdMob, Google’s leading mobile advertising display product.”

    Hay muchos testimonios en la red de cuentas deshabilitadas por el uso de adsense en webviews :( .

    Creo que vale la pena usar Admob.

    Si puedo evitar un disgusto a alguien ya habrá valido la pena el comentario.

    • admin dice:

      Buena data, no habia visto esa clausula, lo extraño es que en los bloques de AdSense halla uno especifico para moviles…

      • alejandro dice:

        es verdad es algo confuso, pero creo yo que es mas bien para sitios moviles y no para aplicaciones. Es por eso que google a comprado admob para que en las aplicaciones utilicemos este servicio y no adsense. Yo por ahora tengo bastantes problemas para integrar admob en mi aplicacion todabia no lo e logrado y los tutoriales que brinda google son poco claros…

        • admin dice:

          Por el momento no he tenido problemas ni ningún aviso de parte de google al respecto, en la entrada en parte se explica como hacer para que en el momento del clic se abra el navegador con la url del banner y no que solo se muestre el mismo sin poder acceder, de todos modos lo que dice google es claro, q no se puede utilizar, por lo pronto voy a esperar que me hagan alguna advertencia para sacarlos, como yo tengo una web y es esa web la q muestro en el webview y no es solo el codigo, puedo en cualquier momento borrar o cambiar el contenido de ese html para que no se muestre mas la publicidad y asi evitarme sanciones.

  3. Alvaro dice:

    http://infosatelite.net/?p=62#comments

    Mi comentario es sobre el post anterior, pero por alguna razon no me aparece esta opción en el.

    Primero que todo gracias por el post, hice todo segun lo indicado y parece que quedó todo, ahora lo que no se es como usar el navitel, es la primera vez que tengo celular android y la primera vez con gps (todo junto jeje) y espero poder usarlo.

    He visto que hay versiones mas nuevas de navitel (de hecho yo primero lo baje desde google play y luego al ver que era de prueba lo desintalé) estas nuevas versiones no se pueden quedar definitivas como esta? ahorrandose el pago claro…

    Bueno gracias de nuevo.

    • admin dice:

      no tiene mucha ciencia, cuando lo abres si tienes el gps activado te va actualizar la ubicacion y mostrar en el mapa, si no lo tienes te va a consultar. Luego de esto tenes cosas para hacer por ejemplo, buscar algun punto en el mapa, y guardarlo, o marcarlo para que te lleve hasta ahi, y el programa te va diciendo que direccion tomar y donde doblar… vamos,,, esta en español es cuestion de leer.