martes, 7 de junio de 2016

Estructura de un proyecto Android

Para empezar a comprender cómo se construye una aplicación Android vamos a echar un vistazo a la estructura general de un proyecto tipo.
Cuando creamos un nuevo proyecto Android en Eclipse se genera automáticamente la estructura de carpetas necesaria para poder generar posteriormente la aplicación. Esta estructura será común a cualquier aplicación, independientemente de su tamaño y complejidad.
En la siguiente imagen vemos los elementos creados inicialmente para un nuevo proyecto Android:



Describamos los elementos principales.

Carpeta /src/

Contiene todo el código fuente de la aplicación, código de la interfaz gráfica, clases auxiliares, etc. Inicialmente, Eclipse creará por nosotros el código básico de la pantalla (Activity) principal de la aplicación, siempre bajo la estructura del paquete java definido.







Carpeta /res/

Contiente todos los ficheros de recursos necesarios para el proyecto: imágenes, vídeos, cadenas de texto, etc. Los diferentes tipos de recursos de deberán distribuir entre las siguientes carpetas:

/res/drawable/. Contienen las imágenes de la aplicación. Se puede dividir en /drawable-ldpi,/drawable-mdpi y /drawable-hdpi para utilizar diferentes recursos dependiendo de la resolución del dispositivo.

/res/layout/. Contienen los ficheros de definición de las diferentes pantallas de la interfaz gráfica. Se puede dividir en /layout y 

/layout-land para definir distintos layouts dependiendo de la orientación del dispositivo.

/res/anim/. Contiene la definición de las animaciones utilizadas por la aplicación.

/res/menu/. Contiene la definición de los menús de la aplicación.

/res/values/. Contiene otros recursos de la aplicación como por ejemplo cadenas de texto (strings.xml), estilos (styles.xml), colores (colors.xml), etc.

/res/xml/. Contiene los ficheros XML utilizados por la aplicación.

/res/raw/. Contiene recursos adicionales, normalmente en formato distinto a XML, que no se incluyan en el resto de carpetas de recursos.


Como ejemplo, para un proyecto nuevo Android, se crean los siguientes recursos para la aplicación:





Carpeta /gen/
Contiene una serie de elementos de código generados automáticamente al compilar el proyecto. Cada vez que generamos nuestro proyecto, la maquinaria de compilación de Android genera por nosotros una serie de ficheros fuente en java dirigidos al control de los recursos de la aplicación.



El más importante es el que se puede observar en la imagen, el fichero R.java, y la clase R.

Esta clase R contendrá en todo momento una serie de constantes con los ID de todos los recursos de la aplicación incluidos en la carpeta /res/, de forma que podamos acceder facilmente a estos recursos desde nuestro código a traves de este dato. Así, por ejemplo, la constante R.drawable.icon contendrá el ID de la imagen “icon.png”contenida en la carpeta /res/drawable/. Veamos como ejemplo la clase R creada por defecto para un proyecto nuevo:


public final class R {


public static final class attr {


}


public static final class drawable {


public static final int icon=0x7f020000;


}


public static final class layout {


public static final int main=0x7f030000;


}


public static final class string {


public static final int app_name=0x7f040001;


public static final int hello=0x7f040000;


}


}


Carpeta /assets/

Contiene todos los demás ficheros auxiliares necesarios para la aplicación (y que se incluirán en su propio paquete), como por ejemplo ficheros de configuración, de datos, etc.

La diferencia entre los recursos incluidos en la carpeta /res/raw/ y los incluidos en la carpeta /assets/ es que para los primeros se generará un ID en la clase R y se deberá acceder a ellos con los diferentes métodos de acceso a recursos. Para los segundos sin embargo no se generarán ID y se podrá acceder a ellos por su ruta como a cualquier otro fichero del sistema. Usaremos uno u otro según las necesidades de nuestra aplicación.

Fichero AndroidManifest.xml
Contiene la definición en XML de los aspectos principales de la aplicación, como por ejemplo su identificación (nombre, versión, icono, …), sus componentes (pantallas, mensajes, …), o los permisos necesarios para su ejecución. Veremos más adelante más detalles de este fichero.
En el siguiente post veremos los componentes software principales con los que podemos construir una aplicación Android.




















Configurar Android para pc


 Configuración de pc:


  1. descargar e instalar jkd 
  2. descargar e instalar sdk
  3. configuración 5 dk
  4. Descargar eclipse
  5. Instalar plugin
  6. configuración las preferencias de eclipse
  7. Configurar la maquina virtual

*pasos para instalar jkd

Abrimos el navegador le ponemos www.oracle.com vamos a la opción de descarga le damos click esperamos a que cargue y vamos a la pestaña de descarga mas populares y descargamos java, descargamos la versión estándar edición le damos click esperamos a que cargue le damos click a la primera plataforma la versión 7 y ahí salen as distintas versiones que podemos descargar en nuestra pc, aceptamos las condiciones de uso, damos click en el link esperamos a que se proceda a la istalacion, solo le damos siguiente hasta que descargue.


Hola Mundo Android en Eclipse

En este capítulo vamos a crear el legendario “Hola mundo”. Comenzamos abriendo Eclipse y en la parte del menú vamos por la opción:

File -> New ->> Android Aplication Project.

En el caso de que no te salga, puedes seguir esta otra ruta:

File ->> New -> Other -> Android -> Android Application Project

La segunda debería funcionar. En la imagen están marcados con rojo los dos caminos.




Ahora tenemos una ventana enfrente de nosotros con algunas opciones. Expliquemos qué son:


Application Name: Éste es el nombre de la aplicación con el que va aparecer en la Playstore en caso de publicarla; por ahora se llama "Hola mundo Desarrollowebcom". Al momento de colocar el nombre, los siguientes campos se llenan por defecto, pero vamos a explicarlos:
Project Name: Éste es el nombre del proyecto para Eclipse. Habitualmente se llama igual que en el campo anterior. Por recomendación no coloquéis espacios dentro del nombre ni tampoco caracteres raros, ya que se va a crear un directorio con ese nombre.

Package Name: Éste es el nombre del paquete. Debemos tratar que sea único, ya que es el nombre del paquete se sube a la Playstore y además el que se instala en los móviles. Por convención, casi siempre inicia con “com.loquetuquieres” haciendo referencia al dominio de la empresa, compañía o persona que lo esta creando. Puedes colocar los puntos “.” Entre las palabras en lugar de los espacios, además de ser un nombre largo para que sea más difícil de repetir, si no quitas el prefijo que viene por defecto “com.example” la Playstore no lo aceptará, ya que piensa que es un ejemplo o un clásico “Hola mundo” pero puedes colocarle algo así: “com.tuempresa.tunombre.nombreapp”
Esto es un ejemplo sencillo de un nombre correcto, en nuestro caso lo haremos así: com.desarrolloweb.joselujan.holamundo Minium 

Requires SDK: Debemos seleccionar la versión mínima del SDK que aceptará nuestro SDK, es decir, que si colocamos 2.3, el móvil que quiera instalar nuestra aplicación mínimo debe ser la versión 2.3.
Target SDK: Ahora seleccionamos el máximo nivel de API que vamos a soportar en nuestra aplicación.
Compile with: Seleccionamos la versión del SDK con la que compilaremos el proyecto. Muchas veces es costumbre colocar aquí y en el campo anterior la versión más nueva de Android.
Terminamos con esta ventana y le damos a "Siguiente".
La siguiente ventana es como la imagen. Expliquemos pues las opciones:


Create custom launcher icon: Nos pregunta si queremos crear desde un inicio el icono de la aplicación, por ahora no lo seleccionamos, ya que después lo vamos a ver por separado.
Create activity: Éste sí lo dejamos, importante, ya que crea la primera ventana de nuestra aplicación Android.

Mark this Project as a library: Éste no es necesario seleccionar en un principio casi nunca, es para que el proyecto que estamos creando lo marque como librería.

Create Prokect in Workspace: Aquí nos está indicando la ruta del proyecto que estamos creando, si la queremos cambiar la podemos colocar manualmente.
Ahora le damos "Next".
La siguiente ventana hace referencia a la "activity" que decidimos crear en la ventana pasada. Por ahora no explicaremos el termino Activity, ya que lo veremos en breve.
Seleccionamos "Create Activity" y después la opción "Black Activity".



En la siguiente ventana nos solicita tres campos:


Activity Name: El nombre de la actividad, es decir, el nombre de la clase que controla la primera pantalla. Podemos dejar el que tiene.
Layout Name: El nombre de la maquetación, es decir, el nombre de la parte gráfica de la primera pantalla. Podemos dejar el que tiene.
Navigation Type: El tipo de navegación que queremos usar, por ahora lo dejamos como "none", ya que lo veremos más adelante en detalle.
Ahora le damos a "Finish", después de esto ya creamos nuestro primer proyecto y nos abre la ventana en donde vamos a encontrar nuestra clase principal del proyecto. Más adelante nos dedicaremos a entender todo claramente.
Para ver nuestro “Hola mundo” en nuestro entorno Eclipse vamos a la parte superior. Aparecerá un botón de color verde parecido al "play" de los aparatos electrónicos que sirve para ejecutar los proyectos.


Le damos clic y luego seleccionamos "Ejecutar como Aplicación Android" o “Android Application” en inglés y le damos a OK.
Si configuramos previamente nuestro emulador, este debe ejecutar solo el último emulador que usamos o el único que tenemos creado.
Listo, tenemos nuestro ¡Hola mundo!



Características de Android


Resumen 
Android es un sistema operativo que desde el 2005 que esta basado en Linux esta diseñado para dispositivos que tiene pantalla táctil como Smartphones y tabletas ha habido apogeo de este sistema operativo debido a que las empresas de software y java se han dedicado a estandarizar un foro de sistema operativo para el campo de la telefonía móvil, este sistema operativo tienen características multitarea es la capacidad de desarrollar al mismo tiempo muchas tareas, las aplicaciones java es para desarrollar un lenguaje de nivel con alto soporte.

  Características de android
Framework de Android- Permite reemplazo y reutilización de componentes.
Navegador Integrado- Basado en el motor open Source Webkit.
SQLite- Base de datos para almacenamiento estructurado que se integra directamente las aplicaciones.
Multimedia- Soporte para medios con formatos comunes de audio, video, imágenes, planas (MPE G4, H.254, MP3, AAC, AMR, JPG, PNG, GIF).
Telefonía GSM- Dependiente del terminal.
Bluetooth, EDGE, 3g, Wifi- Dependiente terminal.

Versiones del Sistema Operativo Android


Como instalar Eclipse con el Plugin Android paso a paso

Android ofrece un plugin personalizado para el IDE de Eclipse, llamado Android Development Tools (ADT), para programar con esta solución, necesitas descargarte Java JDK y el propio Eclipse versión Indigo.
1.- Java JDK 6. http://www.oracle.com/technetwork/java/javase/download
Cuando pulses sobre el botón"JDK Download" te llevara a otra pantalla, ve a la parte de Java JDK, tendrás que aceptar una licencia y ya seleccionar el sistema operativo que usas (windows, mac, 32bit(x86) o 64bit(x64)....)

.- Eclipse Indigo (v 3.7.2 o mayor). http://eclipse.org/downloads/packages/release/Indigo/SR2
como veras hay varias compilaciones de Indigo, debes asegurarte que llevaEclipse JDT plugin (que esta incluido en la mayoría de los paquetes de Eclipse IDE) yo te recomiendo que descargues la versión que te marco aquí abajo (Eclipse IDE for Java Developers).



La instalación de Eclipse es sencilla, basta con que descomprimas el archivo que te descargaste, y saques un acceso directo del ejecutable Eclipse.exe que encontraras dentro de la carpeta Eclipse.
Una vez que hayas instalado el Java JDK y tengas Eclipse localizado, toca instalar el Plugin de Android para Eclipse, para esto haz lo siguiente:
1. Inicia Eclipse, lo primero que te preguntara será sobre la ubicación del WorkSpace, esta es la ubicación donde se guardaran tus proyectos, selecciona una ruta y acepta el dialogo. Truco: Si usas varios PC's usa DropBox o Drive para tener tus proyectos en todos tus PC's.


Después selecciona en el menú superior, selecciona Help > Install New Software.


2. Haz Click en Add, en la esquina superior derecha, en la ventana que aparece escribe "ADT Plugin" para el Name y la siguiente URL para la Location:
https://dl-ssl.google.com/android/eclipse/

Haz Click en OK.
4. Aparecerá entonces el software disponible, debes seleccionar el repositorio Developer Tools y hacer click en Next.

5. En la siguiente ventana, veras la lista del software que se va a descargar, haz Click enNext.


Nota: Es muy posible que te aparezca un mensaje de aviso diciendo que la conexión ni es segura. Acepta el dialogo y continua, cuando termine la descarga reinicia Eclipse.
Tienes toda la documentación oficial aquí: http://developer.android.com/sdk/installing/installing-adt.html
A continuación, veremos una pantalla de bienvenida, esta pantalla la podrás cerrar pulsando la tecla ESCAPE o pulsando sobre la X en la esquina superior Izquierda. Una vez cerrada, entramos la ventana de trabajo principal, en la siguiente lección, explico paso a paso que es cada cosa y para que sirve cada uno de los elementos de la barra de menús.

2. Añadiendo las plataformas de Android (APIs Android)
Para descargarte las distintas plataformas Android (son las APIs o versiones de Android) hay que usar lo que llamamos SDKManager en E



Se abrirá una ventana, espera hasta que el listado se cargue por completo, en ese momento podrás ver las carpetas correspondientes a todas las versiones de cada versión de sistema operativo Android, en función de la versión para que quieras desarrollar aplicaciones, marca la casilla correspondiente y pulsa en la parte inferior “Install packages…” para comenzar con su descarga.
Ahora ya esta todo listo para comenzar a programar y desarrollar tus aplicaciones para Android. ¡No olvides pasarte por el FORO para dejarlas y que les echemos un vistazo! ve al menú del curso GRATIS desde cero y paso a paso para continuar con otra lección.
Ahh otra cosa útil que deberías saber (por si mueves la carpeta de instalación de Eclipse o renombras la carpeta por defecto donde se guarda el SDK) es saber como se cambia la ruta o como se comprueba que el SDK esta bien instalado, en la barra de menú busca: Windows > Preferences.



En la ventana que se abre a continuación, en la parte izquierda selecciona Android, y en la parte derecha comprueba que la carpeta android-sdks esta en la ruta que figura, si no... mal asunto!



Entorno de trabajo para aplicaciones moviles