Tutorial
Transcript of Tutorial
![Page 1: Tutorial](https://reader035.fdocuments.net/reader035/viewer/2022071820/55b4bf4dbb61eb69598b4631/html5/thumbnails/1.jpg)
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](https://reader035.fdocuments.net/reader035/viewer/2022071820/55b4bf4dbb61eb69598b4631/html5/thumbnails/2.jpg)
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](https://reader035.fdocuments.net/reader035/viewer/2022071820/55b4bf4dbb61eb69598b4631/html5/thumbnails/3.jpg)
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](https://reader035.fdocuments.net/reader035/viewer/2022071820/55b4bf4dbb61eb69598b4631/html5/thumbnails/4.jpg)
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](https://reader035.fdocuments.net/reader035/viewer/2022071820/55b4bf4dbb61eb69598b4631/html5/thumbnails/5.jpg)
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](https://reader035.fdocuments.net/reader035/viewer/2022071820/55b4bf4dbb61eb69598b4631/html5/thumbnails/6.jpg)
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](https://reader035.fdocuments.net/reader035/viewer/2022071820/55b4bf4dbb61eb69598b4631/html5/thumbnails/7.jpg)
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](https://reader035.fdocuments.net/reader035/viewer/2022071820/55b4bf4dbb61eb69598b4631/html5/thumbnails/8.jpg)
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](https://reader035.fdocuments.net/reader035/viewer/2022071820/55b4bf4dbb61eb69598b4631/html5/thumbnails/9.jpg)
En cualquier sitio podemos referenciar a variables del fichero strings.xml. Esto es muy útil para aplicaciones en varios idiomas.