Ir al contenido principal

Tutorial / Manual / HOWTO Programación Android desde cero - Parte 2

En la primera parte de este tutorial, vimos como crear un proyecto, que diferencias hay entre una versión a otra, y cual es la estructura básica del proyecto en eclipse.


En esta segunda parte, veremos el emulador y los modos de arranque, y cual es la manera más sencilla (para mí), de arrancarlo. También vamos a ver algo de código por primera vez :)

Bien, antes de usar el emulador, tendremos que crear uno.
Podremos crear tantos emuladores como queramos, para crear un emulador en eclipse:

- Window -> Android SDK and AVD manager
Se abrirá una ventana como la de la imagen:


- Pulsar en el botón nuevo y aparecerá la ventana de diálogo que nos permitirá crear una nueva máquina virtual:

- Le damos el nombre que queramos.

- Después hay que darle un tamaño a la tarjeta SD, el mínimo es de 9MB, también podríamos usar un archivo en el que ya tengamos una tarjeta SD.

- Yo suelo dejar marcada la casilla de snapshot, así se generará un archivo donde se guardará el emulador.

- El resto de casillas las suelo dejar por defecto, en la parte de skin podemos definir la resolucion de la pantalla, y en la parte de hardware capacidades extra que queramos que soporte el emulador.

Una vez terminemos pulsamos el botón de Crear AVD


Bien, ya tenemos creada nuestro emulador, ahora tenemos que arrancarlo.

Yo voy a explicar la forma que sigo para arrancar mis máquinas virtuales:

- Le damos a Window -> Android SDK and AVD manager y se abrirá una ventana como la anterior. En este nuevo caso le daremos al botón de start.


En la ventana que aparece, seleccionamos la opción de scale display to real size
Cuanto mas pequeño resulte al final el valor scale, más pequeño será el emulador.

A partir de aquí cada uno elegiréis lo que sea más cómodo, o mejor se adapte a vuestras pc's.

Marcar también las casillas de Launch from snapshot y de Save to snapshot, así el emulador arrancará más rápido.

Le damos al botón de Launch, y listo, comenzará a arrancar el emulador.




Bien, ahora vamos a insertar algo de código.

Hacemos doble clic en el archivo principal de nuestra aplicación, y este se abrirá en el editor de la derecha:


Ahora dejamos este código en el archivo (cada uno deberá de usar el nombre de la actividad y el nombre del paquete que halláis definido al crear el proyecto, lo dejo marcado en negrita)

package jesusenlanet.android;

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

public class Tutorial_android_parte_1 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("Hello, Android");
       setContentView(tv);
   }
}

Ahora ya tenemos algo de código, y el emulador funcionando, falta ejecutar el programa en el emulador.

¿Esto como lo vamos a hacer?, para esto tendremos que seguir unos pasos, lo dejo en imagenes:

- Desplegar las opciones en el botón de ejecutar, y elegir Run configurations


- Marcar Android Application y pulsar en el botón de new launch configuration



- Poner un nombre a esta configuración, y dejar seleccionado de momento launch default activity, y


- En la pestaña target podemos hacer varias cosas:

Dejar la selección del emulador en manual, así cada vez que ejecutemos, saldrá una ventana preguntando en que emulador queremos ejecutar el programa, mostrando una lista de los emuladores que ya están corriendo, o para que seleccionemos cual arrancar.


Dejar la selección del emulador en Automático, para lo cual seleccionamos un emulador de la lista. Cuando ejecutemos, se arrancará solo el emulador en caso de no estar ya arrancado (pero así no hay opción de escalarlo y que consuma menos recursos, por eso nosotros lo arrancamos antes).

Yo personalmente lo dejo en manual, para no arrancar el emulador equivocado sin querer.

Así, en la pestaña target, definimos el emulador y, además, vamos a marcar una casilla extra, la de Disable boot animation, para que el emulador arranque más deprisa.


Pulsamos en apply y después en run
Como hemos dejado la selección del emulador en manual, seleccionamos el que queramos de entre los que ya estén arrancados (si hay alguno), o arrancamos el que queramos, y listo, ya debe de aparecer la aplicacion funcionando en el emulador.




Decir que en el programa de ejemplo que hemos copiado antes, no estamos utilizando ningún layout hecho por nosotros. Sino que creamos una caja de texto:


TextView tv = new TextView(this);

Le ponemos un texto:

tv.setText("Hello, Android");

Y decimos que que se muestre solamente la caja que hemos creado:
setContentView(tv);


Bueno, en la parte tercera, explicaré como crear nuestras propias pantallas, cual es la manera de añadirlas al proyecto, y cómo pasar de una pantalla a otra dentro del programa.

Un saludo!



__________________________________________________________________
TUTORIAL ANDROID
Tutorial Android Parte 1
Tutorial Android Parte 2
Tutorial Android Parte 3

Comentarios

Entradas populares de este blog

Join o producto cartesiano de dos tablas en EXCEL 2007

Hace unos dias inicie mi ocupacion como becario de informatica en la facultad de humanidades y ciencias de la educacion de la UJAEN. Y como no, no han tardado en surgir los problemas. Supongamos que tenemos dos tablas, y queremos hacer una tabla que tenga datos de estas dos tablas, segun un criterio , y es que solo pueden aparecer ciertas filas, mas exactamente aquellas donde coincida cierto campo, en este ejemplo, el codigo de la asignatura. Si queremos realizar el join o producto cartesiano tal y como lo hariamos en una base de datos, parece ser que si no estamos trabajando con una bbdd sino con Excel, la cosa se complica un poco. Para "multiplicar tablas" en excel, primero vamos a hacer una cosa, cada tabla la vamos a guardar en hojas separadas, en nuestro caso, una tabla la guardamos en Hoja1 , y la otra en Hoja2 Ahora, nos situamos en la hoja donde queramos que aparezca el producto cartesiano de nuestras dos tablas, nos vamos a la ficha DATOS . Veremos que h

Descargar código fuente desde Google App Engine

Estaba desarrollando una aplicación en google app engine, cuando un día, al llegar al trabajo (hoy), me doy cuenta que no tengo acceso a mi versión de desarrollo. Como la ultima versión que estaba desarrollando, justo la noche de antes la había subido a google app engine, pues me dije: "Ya esta, me conecto y me descargo el código fuente" ERROR 404 // SOLUCIÓN A IDEA MÁGICA NO ENCONTRADA Tras buscar por google, observo que hay muchas voces que dicen que no te puedes descargar el código fuente, que google no deja disponible ninguna API para descargarte tu codigo, ... ¡Pero como va a ser así!, desde appengine, te dicen que se puede hacer, lo que no está tan claro es como hacerlo. Pues estos son los pasos para poder hacerlo: Crear un directorio vacío para poder descargar en el nuestra aplicación. Abrir la línea de comandos, y cambiarnos al directorio de google app engine: cd C:\Archivos de Programa\Google\google_appengine\ Ejecutar el siguiente comando para descar

Clases abstractas con python

¿Como se crean clases abstractas con python?. Voy a explicar cual es la forma correcta de definir una clase abstracta y heredar de ella. El procedimiento general es: Definir una clase abstracta utilizando una metaclase. Definir la subclase de la clase abstracta (sin herencia). Registrar esta última clase como subclase de la clase abstracta. Tomemos como ejemplo el siguiente código: from abc import ABCMeta, abstractmethod class AbstractFoo:     __metaclass__ = ABCMeta          @abstractmethod     def bar(self):         pass     @classmethod     def __subclasshook__(cls, C):         return NotImplemented class Foo(object):     def bar(self):         print "hola" AbstractFoo.register(Foo)  Lo primero que hacemos es importar del módulo abc la clase ABCMeta y el decorador abstractmethod . La clase ABCMeta es la metaclase que utilizamos para definir las clases abstractas, nos aporta una serie de funcionalidades. Una vez hemos asignada la metacl