Vous êtes sur la page 1sur 39

Estructura de un proyecto ANDROID

Ing. Edgar Lizrraga Ugarte


Creando un nuevo proyecto
Para empezar a comprender cmo se construye
una aplicacin Android vamos a crear un nuevo
proyecto Android en Eclipse. proyecto Android en Eclipse.
Para crear un nuevo proyecto abriremos Eclipse
e iremos al men File / New / Android
Application Project.
Creando un nuevo proyecto
En la primera pantalla indicaremos el nombre de la
aplicacin, el nombre del proyecto y el paquete java
que utilizaremos en nuestras clases java. Tendremos
que seleccionar adems la mnima versin del SDK
que aceptar nuestra aplicacin al ser instalada en
un dispositivo (Minimum Required SDK), la versin
Creando un nuevo proyecto
un dispositivo (Minimum Required SDK), la versin
del SDK para la que desarrollaremos (Target SDK),
y la versin del SDK con la que compilaremos el
proyecto (Compile with). Las dos ltimas suelen
coincidir con la versin de Android ms reciente. El
resto de opciones las dejaremos con los valores por
defecto.
Creando un nuevo proyecto
Creando un nuevo proyecto
Al pulsar el botn Next, accederemos al segundo
paso del asistente, donde tendremos que indicar
si durante la creacin del nuevo proyecto
queremos crear un icono para nuestra aplicacin
(Create custom launcher icon) y si queremos
Creando un nuevo proyecto
(Create custom launcher icon) y si queremos
crear una actividad inicial (Create activity).
Tambin podremos indicar si nuestro proyecto
ser del tipo Librera (Mark this Project as a
library). Por ahora dejaremos todas las opciones
marcadas por defecto como se ve en la siguiente
imagen y pulsamos Next.
Creando un nuevo proyecto
En la siguiente pantalla del asistente
configuraremos el icono que tendr nuestra
aplicacin en el dispositivo. No nos detendremos
mucho en este paso ya que no tiene demasiada
relevancia por el momento. Tan slo decir que
Creando un nuevo proyecto
relevancia por el momento. Tan slo decir que
podremos seleccionar la imagen, texto o dibujo
predefinido que aparecer en el icono, el
margen, la forma y los colores aplicados. Por
ahora podemos dejarlo todo por defecto y
avanzar al siguiente paso pulsando Next.
Creando un nuevo proyecto
En la siguiente pantalla del asistente elegiremos
el tipo de Actividad principal de la aplicacin.
Entenderemos por ahora que una actividad es
una ventana o pantalla de la aplicacin. En
Creando un nuevo proyecto
este paso tambin dejaremos todos los valores
por defecto, indicando as que nuestra pantalla
principal ser del tipo BlankActivity.
Creando un nuevo proyecto
Por ltimo, en el ltimo paso del asistente
indicaremos los datos de esta actividad principal
que acabamos de elegir, indicando el nombre de
su clase java asociada y el nombre de su layout
xml (algo as como la interfaz grfica de la
Creando un nuevo proyecto
xml (algo as como la interfaz grfica de la
actividad, lo veremos ms adelante).
Creando un nuevo proyecto
Una vez configurado todo pulsamos el
botn Finish y Eclipse crear por nosotros toda
la estructura del proyecto y los elementos
indispensables que debe contener. En la
Creando un nuevo proyecto
indispensables que debe contener. En la
siguiente imagen vemos los elementos creados
inicialmente para un nuevo proyecto Android:
Creando un nuevo proyecto
Carpeta /src/: Esta carpeta contendr todo el cdigo
fuente de la aplicacin, cdigo de la interfaz grfica,
clases auxiliares, etc. Inicialmente, Eclipse crear por
nosotros el cdigo bsico de la pantalla (Activity)
principal de la aplicacin, que recordemos que en
nuestro caso eraMainActivity, y siempre bajo la
Estructura del proyecto
nuestro caso eraMainActivity, y siempre bajo la
estructura del paquete java definido.
Carpeta /res/: Contiene todos los ficheros de recursos
necesarios para el proyecto: imgenes, vdeos, cadenas de texto, etc. Los
diferentes tipos de recursos se distribuyen entre las siguientes subcarpetas:
Carpeta Descripcin
/res/drawable/
Contiene las imgenes [y otros elementos grficos] usados en la
Estructura del proyecto
/res/drawable/
Contiene las imgenes [y otros elementos grficos] usados en la
aplicacin. Para definir diferentes recursos dependiendo de la
resolucin y densidad de la pantalla del dispositivo se suele dividir
en varias subcarpetas:
/drawable-ldpi (densidad baja)
/drawable-mdpi (densidad media)
/drawable-hdpi (densidad alta)
/drawable-xhdpi (densidad muy alta)
Carpeta Descripcin
/res/layout/
Contiene los ficheros de definicin XML de las diferentes
pantallas de la interfaz grfica. Para definir
distintos layouts dependiendo de la orientacin del
dispositivo se puede dividir en dos subcarpetas:
(vertical)
Estructura del proyecto
/layout (vertical)
/layout-land (horizontal)
/res/menu/
Contiene la definicin XML de los mens de la aplicacin.
/res/values/ Contiene otros ficheros XML de recursos de la aplicacin,
como por ejemplo cadenas de texto (strings.xml), estilos
(styles.xml), colores (colors.xml), arrays de valores
(arrays.xml), etc.
Estructura del proyecto
Como ejemplo, para un proyecto nuevo Android, se
crean por defecto los siguientes recursos para la
aplicacin:
Estructura del proyecto
Entre los recursos creados por defecto, cabe destacar el
layout activity_main.xml, que contiene la definicin
de la interfaz grfica de la pantalla principal de la
aplicacin. Si hacemos doble clic sobre el fichero, Eclipse
nos mostrar esta interfaz en su editor grfico y como nos mostrar esta interfaz en su editor grfico y como
podremos comprobar, en principio contiene tan slo una
etiqueta de texto en pantalla con el mensaje Hello
World!.
Estructura del proyecto
Estructura del proyecto
Durante el curso no utilizaremos demasiado este editor
grfico, sino que modificaremos la interfaz de nuestras
pantallas manipulando directamente el fichero XML
asociado (al que se puede acceder pulsando sobre la
pestaa inferior derecha, junto la solapa Graphical pestaa inferior derecha, junto la solapa Graphical
Layout que se observa en la imagen. En este caso, el
XML asociado sera el siguiente:
Estructura del proyecto
Carpeta /gen/: Contiene una serie de elementos de
cdigo generados automticamente al compilar el
proyecto. Cada vez que generamos nuestro proyecto, la
maquinaria de compilacin de Android genera por
nosotros una serie de ficheros fuente java dirigidos al
Estructura del proyecto
nosotros una serie de ficheros fuente java dirigidos al
control de los recursos de la aplicacin. Importante:
dado que estos ficheros se generan automticamente tras
cada compilacin del proyecto es importante que no se
modifiquen manualmente bajo ninguna circunstancia.
Estructura del proyecto
A destacar sobre todo el fichero que aparece desplegado en la
imagen anterior, llamadoR.java, donde se define la clase R.
Esta clase R contendr en todo momento una serie de
constantes con los ID de todos los recursos de la aplicacin
incluidos en la carpeta /res/, de forma que podamos acceder
Estructura del proyecto
incluidos en la carpeta /res/, de forma que podamos acceder
fcilmente a estos recursos desde nuestro cdigo a travs de
este dato. As, por ejemplo, la
constante R.drawable.ic_launcher contendr el ID de la
imagen ic_launcher.png contenida en la
carpeta /res/drawable/.
En cualquier caso recordemos que no debemos tocar en
ningn momento el cdigo de esta clase.
Carpeta /bin/: esta es otra de esas carpetas que en
principio no tendremos por qu tocar. Contiene los
elementos compilados de la aplicacin y otros ficheros
auxiliares. Cabe destacar el fichero con extensin
.apk, que es el ejecutable de la aplicacin que se
Estructura del proyecto
.apk, que es el ejecutable de la aplicacin que se
instalar en el dispositivo
Carpeta /libs/: Contendr las libreras auxiliares,
normalmente en formato .jar que utilicemos en
nuestra aplicacin Android.
Estructura del proyecto
Fichero AndroidManifest.xml: La base para cualquier
aplicacin Android es el archivo AndroidManifest.xml que se
encuentra en la raz de directorios de cualquier proyecto.
Dentro de este archivo se declara todo lo que se encuentre
dentro de la aplicacin las actividades, los servicios, etc. y
cmo todas estas piezas interactan entre s. Cada vez que
Estructura del proyecto
cmo todas estas piezas interactan entre s. Cada vez que
creamos un nuevo proyecto Android, obtendremos un archivo
manifest inicial que se genera automticamente, y que abarca
los elementos bsicos de una aplicacin sencilla; la
declaracin de una actividad y nada ms. Conforme aumente
la complejidad de las funciones que queramos que realicen
nuestras aplicaciones, este archivo ir creciendo en lneas de
cdigo y en declaraciones de elementos distintos.
Elementos bsicos del AndroidManifest.xml
El elemento raz de todos los archivos manifiestos es,
un elemento <manifest></manifest>:
Estructura del proyecto
Si observamos con atencin, uno de los datos ms
importantes que debemos indicar en la declaracin del
manifiesto es el del atributo package que corresponde
al espacio de nombres que definimos en el wizzard de
creacin del proyecto. En este ejemplo, nuestro package
Estructura del proyecto
creacin del proyecto. En este ejemplo, nuestro package
es com.example.app1, que es el nombre del paquete Java
que contiene el elemento raz de nuestra aplicacin, es
decir, la actividad principal de arranque que necesitamos
inicie siempre antes que las dems.
Posteriormente, para declarar cada una de las
actividades deberemos seguir una convencin de
nombres que consiste en agarrar el nombre de la clase
Java que representa la Activity y anteponerle un signo de
punto. Por ejemplo, si quisiramos hacer referencia
Estructura del proyecto
punto. Por ejemplo, si quisiramos hacer referencia
a com.example.App1 la declaracin en
el AndroidManifest.xml quedara de la siguiente
manera:
Permiso y aplicacin
uses-permission: Como su nombre lo indica,
este elemento declara los permisos que necesitar
tu aplicacin para funcionar de manera apropiada.
Entre ellos podemos encontrar permisos para
Estructura del proyecto
Entre ellos podemos encontrar permisos para
acceder al GPS del telfono y a los datos de
localizacin para que haga tal o cual funcin.
application: Este elemento define lo principal de
la aplicacin (nombre, actividad principal, icono,
etc.) que el archivo AndroidManifest describe.
Estructura del proyecto
Estructura del proyecto
Estructura del proyecto
Estructura del proyecto

Vous aimerez peut-être aussi