Archives for Adsense

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.