jueves, 9 de agosto de 2012

Implementar Admob en eclipse

Hola bloggeros hoy os traigo una duda muy solicitada como implementar admob en eclipse.

Es muy sencillo y consta de 3 pasos:

1º Paso descargarse la libreria de admob GoogleAdMobAdsSdk-6.0.1.jar.

2º Crear un directorio llamado libs dentro del proyecto y meter la libreria en dicho directorio.

3º Desde eclipse boton derecho en la libreria del directorio libs >> build patch >> add to build path

4º En el manifiest vas al editor xml y pegas estas líneas al final .

     <activity android:name="com.google.ads.AdActivity"
              android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"></activity>
  </application>
  <uses-permission android:name="android.permission.INTERNET"/>
  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

</manifest>

5º Abres tu layout (main.xml por defecto)

6º Agregas esta linea a la cabecera
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"

Quedando parecida a esta:


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:background="@drawable/fondo" >


6º Añades el siguiente control al código del main.xml donde adUnitID es el código que te facilita adsense para tu aplicación.

 <com.google.ads.AdView
            android:id="@+id/adView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_alignParentLeft="true"
            ads:adSize="BANNER"
            ads:adUnitId="a11111111f239df"
            ads:loadAdOnCreate="true" >

Y eso es todo, si teneis dudas comentarlas que en un rato os las solucionaré.

Saludos!!

Desarrolla tu brujula para android

Desde nuestro último articulo sobre desarrollo en java sobre android ya habreis tenido tiempo para ir investigando, pero no os preocupeis si no es asi desde errorwindows os traemos un ejemplo de como desarrollar una brujula para que no perdais el norte mientras aprendeis :).
Empezamos!!
Vamos a crearnos 2 clases una llamada Compass y otra rose.

En la clase compass escribiremos el siguiente código:


package msm.compass;

import android.app.Activity;
import android.hardware.SensorListener;
import android.hardware.SensorManager;
import android.os.Bundle;
import android.view.Window;
import android.view.WindowManager;

// implement SensorListener
public class Compass extends Activity implements SensorListener {
  SensorManager sensorManager;
  static final int sensor = SensorManager.SENSOR_ORIENTATION;
  Rose rose;

  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Set full screen view
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
        WindowManager.LayoutParams.FLAG_FULLSCREEN);
    requestWindowFeature(Window.FEATURE_NO_TITLE);

    rose = new Rose(this);

    setContentView(rose);

    // get sensor manager
    sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
  }

  // register to listen to sensors
  @Override
  public void onResume() {
    super.onResume();
    sensorManager.registerListener(this, sensor);
  }

  // unregister
  @Override
  public void onPause() {
    super.onPause();
    sensorManager.unregisterListener(this);
  }

  // Ignore for now
  public void onAccuracyChanged(int sensor, int accuracy) {
  }

  // Listen to sensor and provide output
  public void onSensorChanged(int sensor, float[] values) {
    if (sensor != Compass.sensor)
      return;
    int orientation = (int) values[0];
    rose.setDirection(orientation);
  }
}

Como podeis ver implementamos el SensorListener y el SensorManager que controlará el movimiento del teléfono para que controle donde esta el norte.

Ahora la clase rose:

package msm.compass;


import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Paint.Style;
import android.widget.ImageView;

public class Rose extends ImageView {
  Paint paint;
  int direction = 0;

  public Rose(Context context) {
    super(context);

    paint = new Paint();
    paint.setColor(Color.WHITE);
    paint.setStrokeWidth(2);
    paint.setStyle(Style.STROKE);

    this.setImageResource(R.drawable.compassrose);
  }

  @Override
  public void onDraw(Canvas canvas) {
    int height = this.getHeight();
    int width = this.getWidth();

    canvas.rotate(direction, width / 2, height / 2);
    super.onDraw(canvas);
  }

  public void setDirection(int direction) {
    this.direction = direction;
    this.invalidate();
  }

}

Esta clase únicamente controla la dirección que tendrá nuestro fondo (es una brujula) y lo irá girando a medida que desde la otra clase se le vaya pidiendo en función de la información que obtengamos del Sensor Manager.

Por último y de regalo os muestro mi main.xml por si teneis problemas al implementar la brujula.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    
    xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_margin="25dp" android:gravity="center" android:text="@string/app_name" android:textSize="35sp"/>

<TextView
    android:id="@+id/textDirection"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:gravity="center"
    android:text="NW"
    android:textSize="150sp" />

</LinearLayout>

Si quereis ver el ejemplo en funcionamiento aqui os dejo uno de ellos:


miércoles, 8 de agosto de 2012

Star Memory (juego de parejas)

Hoy me ha llegado otra muy buena aplicación para que los niños ejerciten la mente. Es el antiguo juego de parejas pero con cartas de estrellas. Diviértete ejercitando la memoria con Star Memory. Manten tu cerebro joven a la ver que te diviertes y ejercitas la concentración. Además con su contenido de estrellas es ideal para niños ya que aparecen estrellas infantiles con multitud de disfraces o posturas. El juego es sencillo, debes utilizar tu memoria visual para poder encontrar las parejas.

viernes, 3 de agosto de 2012

Crono Footing (La app del deportista)

Desde la llegada de android, los deportistas están de enhorabuena, ya no les hace falta comprarse un aparato especifico para controlar sus recorridos.

Pero hasta ahora había una cosa que se echaba en falta, y que Crono Footing la ha incluido, esta es el resumen de tus estadísticas en castellano.

Con Crono footing podrás optimizar tu entrenamiento

Almacenarás todos tus recorridos y en futuras versiones los podras compartir con tus amigos. Ademas para hacer tus entrenamientos mas a menos tienes un acceso directo a tu centro multimedia para escuches tu musica preferida de fondo.

-- Inclute mapa de la ruta realizada.

-- Mientras vas realizando el recorrido si pulsas sobre el valor (velocidad, distancia) cada minuto una voz te recordara la velocidad o distancia que llevas.


Estas contento con esta aplicación android no te olvides de compartirla por tus redes sociales android Whatsapp , Facebook , Tuenti , Twitter , juilop , Messenger

footing, bike, running, bicicleta, correr, velocímetro, velocidad, distancia.

Con Crono footing podras tener controlados todos los recorridos realizados en bicicleta, corriendo, patinando, esquiando mediante al posicionador gps.
Puede ser utilizado en cualquier actividad dandote la información adecuada tanto escrita como via voz de la velocidad,distancia, ritmo y calorias (correr, esquiar, caminar, etc.).
Novedades:
Entrena con esta aplicación y preparate para aparecer en el medallero y obtener una medalla para Londres 2012 o al menos para perder peso.
Está aplicación esta realizada por petición de deportistas e incorporará cualquier tema que se note en falta en cualquiera de las aplicaciónes enfocadas al deporte como Endomondo, runtastic, garmin fit, etc.
Tags:
Puedes descargarla de:



jueves, 26 de julio de 2012

Android Hello World bajo eclipse.


En esta entrada vamos a crear el famoso ejemplo Hello World de cualquier lenguaje de programación.

Crearemos un nuevo proyecto android y rellenaremos el proyecto, nombre de la aplicación, package name y versión de android.

Por defecto nos creará varios archivos, pero para este ejemplo nos centraremos en el
main.java que es el fichero donde se encontrará toda la programación del ejemplo.

Código main.java:


import android.app.Activity;
import android.os.Bundle;


public class HelloWorld extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}

Ahora simplemente debemos cambiar unas líneas de código. Sustituimos la línea setContentView... por
Código :
TextView tv = new TextView(this);
tv.setText("Hola mundo!!");
setContentView(tv);

Con esto creamos un campo de texto y lo inicializamos con el texto "Hola Mundo" y luego hacemos que aparezca por pantalla. Veremos que eclipse nos dice que nos falta importar una clase, para ello usamos la ayuda de eclipse y apretamos Ctrl+Shift+o y nos añadirá" import android.widget.TextView;"
Por lo que el código final será:
Código :


import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;


public class HelloWorld  extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
tv.setText("Hola mundo!!");
setContentView(tv);
}
}

Ya tenemos lista nuestra primera aplicación en android. Para ejecutarla en el emulador simplemente elegimos el menú Run Android Application. Con esto nos saltará el emulador:

Como podéis ver, es muy simple crear un hola mundo, así que más adelante iremos mostrando más ejemplos en android.

Para cualquier duda postear y os las iré resolviendo

martes, 24 de julio de 2012

Programación en android con eclipse.


Hola blogueros, hace unos meses inicie mi andadura por el mundo del desarrollo de aplicaciones para android bajo la herramienta eclipse.

Hasta ahora comentaros que me he divertido y de paso tengo algún pequeño ingreso de publicidad que si bien no es mucho por lo menos me vale para pagar el adsl o alguna cenita fuera de fin de semana :), eso si esto es estadístico si una app te da poco 1000 app te darán poco x 1000 así que a largo plazo nunca se sabe!

Ahora vamos al lio y como primer post os detallare como empezar en este mundillo con eclipse (si tenéis pensado realizar videojuegos yo optaría por aprender corona sdk para juegos 2d o unity 3d para los 3d)

Para poder trabajar con eclipse lo primero que debéis realizar es descargar el sdk de android desde aqui:

http://developer.android.com/sdk/index.html (decir que hacerse desarrollador de android cuesta 20€ para toda la vida).

Una vez descargado debéis de ejecutar el SDK manager y descargar los paquetes sobre los que queréis desarrollar.

Yo suelo desarrollar en 2.2 para que mis aplicaciones tengan un rango mas amplio, aunque al final compilo con el sdk 4.0 porque es necesario para poder poner la publicidad de admob.

Una vez descargado todos los paquetes debemos descargar eclipse.

http://www.eclipse.org/downloads/packages/eclipse-classic-42/junor

Ambas descargas tardaran un rato por lo que podéis iros a tomar un café si queréis ;).

Cuando se haya descargado e instalado eclipse procedéis a abrirlo y poner vuestro directorio de trabajo (workspace) que será donde se guardaran vuestras apps.

Ahora únicamente queda por instalar el plugin de eclipse para android.

Para ello pulsáis help/Install new software y agregáis un nuevo repositorio https://dl-ssl.google.com/android/eclipse/ y descargáis todo lo que os aparezca.


Una vez acabadas estas descargas reiniciáis eclipse y ya esta listo para trabajar!

Si tenéis dudas postearla e intentare resolverla!