Tutorial

10
TUTORIAL Creando un nuevo proyecto La mejor forma de conocer un sistema es probándolo asi que vamos a crear el proyecto y por el camino vamos explicando cómo funciona Android. Una vez instalado el plugin, creamos el nuevo proyecto de Android (File > New > Project > Android Project). Damos a siguiente:

Transcript of Tutorial

Page 1: Tutorial

TUTORIAL

Creando un nuevo proyecto

La mejor forma de conocer un sistema es probándolo asi que

vamos a crear el proyecto y por el camino vamos explicando

cómo funciona Android.

Una vez instalado el plugin, creamos el nuevo proyecto de

Android (File > New > Project > Android Project). Damos a

siguiente:

Page 2: Tutorial

Project name: HolaMundo Package name: com.example.holamundo Create Activity: HolaMundo Application name: Hola Mundo

Aunque he puesto los mismos nombres en los 4 sitios no tiene

por qué coincidir, como sabréis. El nombre de la aplicación es lo

que veréis en el móvil, las actividades son los controladores de

Android, el nombre del paquete es algo interno y el proyecto es

lo que veréis en Eclipse. Finalizamos y podremos ver el

siguiente árbol de archivos

Page 3: Tutorial

Voy a explicar la estructura:

/src – Aquí se encuentran las actividades (controladores recuerdo), clases y un archivo que se llama R.java. Este archivo no se debe tocar nunca, Android lo actualiza automáticamente pero si lo veis os encontraréis con variables y posiciones.

/Android Library – Eclipse referencia al sdk de Android. No mováis nunca el sdk de sitio o si lo hacéis recordad cambiar la dirección

/assets – Aquí se puede incluir archivos varios (música, pdfs, zips, rars)

/res/drawable – Todas las imágenes van en este directorio /res/layout – Todas las vistas van aquí /res/values – En el archivo strings.xml podemos poner

variables que luego sustituiremos en las vistas

Page 4: Tutorial

AndroidManifest.xml – Este archivo es muy importante porque recoge todas las actividades y algunas configuraciones del proyecto.

Antes de seguir vamos a ejecutar el proyecto, y para eso damos

a Run As y elegimos Android Application. Si instalasteis todo

bien saldrá el emulador, cargando iniciando Android (tarda un

poquito). Lo desbloqueamos dando a Menú, y ya puedes ver la

aplicación más básica que se hace en todos los lenguajes,

nuestro Hola Mundo.

Page 5: Tutorial

Si quieres puedes investigar los programas que trae el emulador,

está bastante bien conseguido; aunque para mi gusto faltan

varios detalles como girar el teléfono en posición horizontal. A

continuación veremos cómo ha funcionado el programa.

Entendiendo el Hola Mundo

Gracias al plugin de Android, no hemos programado nada y ya

tenemos el programa básico. Pero como hemos visto antes en la

estructura, se han creado unos cuantos archivos. Vamos a ir paso

a paso por cada uno de ellos.

?0102

// AndroidManifest.xml<?xml version="1.0" encoding="utf-8"?>

Page 6: Tutorial

0304050607080910111213141516

<manifest xmlns:android="http://schemas.android.com/apk/res/android"      package="com.example.holamundo"      android:versionCode="1"      android:versionName="1.0.0">    <application android:icon="@drawable/icon" android:label="@string/app_name">        <activity android:name=".HolaMundo"                  android:label="@string/app_name">            <intent-filter>                <action android:name="android.intent.action.MAIN" />                <category android:name="android.intent.category.LAUNCHER" />            </intent-filter>        </activity>    </application></manifest>

Supongo que estaréis familiarizados con xml, si no, no os

preocupéis, es muy fácil de entender. Podemos ver como crea un

manifesto con el paquete y la versión de Android. Contiene la

aplicación que hemos

creado. android:icon="@drawable/icon" coge la

imagen llamada icon.png del directorio /res/drawables y la

asigna como icono. Esto es lo que véis en el menú de

aplicaciones. Lo mismo sucede

conandroid:label="@string/app_name", sustituye la

variable app_name por su valor en el archivo:

?123456

// res/values/strings.xml<?xml version="1.0" encoding="utf-8"?><resources>    <string name="hello">Hello World, HolaMundo</string>    <string name="app_name">Hola Mundo</string></resources>

Page 7: Tutorial

Volviendo a AndroidManifest.xml, vemos que dentro de

application se encuentra la actividad

principal android:name=".HolaMundo", que corresponde

con un punto más el nombre de la clase java

en src/com.example.holamundo. El resto son detalles más

profundos. Asi que Android ejecuta esa clase, vamos a verla:

?01020304050607080910111213141516

// src/com.example.holamundo/HolaMundo.javapackage com.example.holamundo;

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

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

Crea una actividad llamada HolaMundo con un único método

que sobreescribe al de la clase que extiende. Vemos como

setContentView pasa como parámetro R.layout.main que

representa a /res/layout/main.xml. Pero como dije antes, todo las

referencias a archivos y variables pasan por la clase R.java que

Android se encarga de ajustar automáticamente. Veamos la vista

?

Page 8: Tutorial

01020304050607080910111213

// res/layout/main.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    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:text="@string/hello"    /></LinearLayout>

Como podéis ver vuelve a ser un xml y es que Google ha

elegido usar xml para representar las vistas. LinearLayout es un

tipo de layout que muestra los elementos uno debajo de otro.

Tiene orientación vertical y ocupa toda la pantalla tanto a lo alto

como a lo ancho.

Dentro podemos ver un campo de texto (TextView) cuyo texto se

encuentra en el archivostrings.xml visto antes.

Finalizando

Hemos visto paso por paso lo que hace Android para ejecutar un

sencillo Hola Mundo. Lo importante es:

AndroidManifest.xml contiene todas las actividades indicando cuál se ejecuta primero.

Todas las actividades y clases se encuentran en src. La actividad HolaMundo usa el layout main.xml

Todos los layouts están en res/layout. Se programan en xml siguiendo las etiquetas del SDK de Android.

Page 9: Tutorial

En cualquier sitio podemos referenciar a variables del fichero strings.xml. Esto es muy útil para aplicaciones en varios idiomas.