miércoles, 26 de abril de 2017

12. PRIMERA APLICACIÓN DE ANDROID

Ya tenemos todo lo necesario instalado para implementar el primer proyecto. Desde el menú de opciones: File -> New -> Android Application Project...

creacion proyecto android

  • En este diálogo especificamos el nombre de la aplicación y proyecto (pueden ser iguales) y el nombre del paquete java donde se almacenarán los archivos java que creemos (normalmente la url de su empresa al revés).
  • Ahora empezaremos a presionar el botón next para pasar a otras configuraciones de nuestra aplicación, por el momento dejaremos todos los valores por defecto en cada una de los diálogos que aparece (son 5 diálogos actualmente), en el último diálogo debe aparecer el botón "Finish" el cual presionamos.

  • El ADT nos genera todos los directorios y archivos básicos para iniciar nuestro proyecto:


archivos y directorios de un proyecto android


  • No haremos en este momento un análisis del significado y objetivo de cada uno de estos directorios y archivos generados, sino a medida que avancemos con este curso iremos viendo en forma puntual y profunda.
  • La interfaz visual de nuestro programa para Android se almacena en un archivo XML en la carpeta res, subcarpeta layout y el archivo se llama activity_main.xml. En esta carpeta tenemos creada nuestra primer pantalla.
  • Al seleccionar este archivo el ADT nos permite visualizar el contenido en "vista de diseño (Graphical Layout)":



archivo xml graphical layout



  • Si seleccionamos la otra pestaña podemos visualizar el archivo activity_main.xml en formato de texto:



archivo xml en modo texto


  • El ADT ya insertó un control de tipo RelativeLayout que permite ingresar controles visuales alineados a los bordes y a otros controles que haya en la ventana (más adelante analizaremos este layout)
  • Ya veremos que podemos modificar todo este archivo para que se adapte a la aplicación que queremos desarrollar.
  • Luego contenido en el control RelativeLayout hay otro control de tipo TextView que es básicamente una etiqueta o label que mostrará en pantalla el valor almacenado en la propiedad text.
  • Podemos modificar directamente el archivo xml o en "vista de diseño" modificar los valores de las propiedades. Elegimos nuevamente la pestaña "Graphical Layout" y seleccionamos el TextView con el mouse y vemos que en la parte derecha de la pantalla aparece una ventana llamada "properties":


properties


  • Y estando seleccionado el TextView buscamos la propiedad Text y cargamos: "Mi primer programa para Android" y presionamos enter, podemos ver que se actualiza la vista:


properties


  • Con esto ya podemos probar nuestra primer aplicación para un dispositivo Android. SELECCIONAMOS con el mouse en la ventana de la izquierda (Package Explorer) el proyecto001 y presionamos el ícono de Run (triángulo verde) o desde el menú. Seleccionamos que se ejecute como aplicación "Android Application". Ahora se abrirá el AVD(Android Virtual Device) esto tarda bastante tiempo, es muy importante recordar que luego de ver ejecutándose el programa NO debemos cerrar el AVD para que la próxima ejecución se inicie más rápido (podemos minimizar el AVD).
  • Ahora podemos ver nuestra primer aplicación corriendo en el emulador de Android:


AVD con programa Android en ejecucion


  • Como hemos visto el ADT nos genera en forma automática todas las carpetas y archivos básicos que necesitamos en un principio. En el siguiente concepto podremos empezar a programar verdaderamente. El único objetivo de este ejercicio es recordar los pasos para crear un proyecto.

14. LAYAOUT

Layout es un término de la lengua inglesa que no forma parte del diccionario de la Real Academia Española (RAE). El concepto puede traducirse como “disposición” o “plan” y tiene un uso extendido en el ámbito de la tecnología.



La noción de layout suele utilizarse para nombrar al esquema de distribución de los elementos dentro un diseño. Es habitual que un diseñador que se dedica a la creación de páginas web desarrolle un layout y se lo presente a su cliente para que éste lo apruebe y decida sobre la distribución de los contenidos.

La siguiente lista describe los Layout más utilizados en  Android:

LinearLayout: Dispone los elementos en una fila o en una columna.
es uno de los Layout más utilizado en la práctica. Distribuye los elementos uno detrás de otro, bien de forma horizontal o vertical. 




TableLayout: Distribuye los elementos de forma tabular. Se utiliza la etiqueta <TableRow> cada vez que queremos insertar una nueva línea.


RelativeLayout: Dispone los elementos en relación a otro o al padre. Permite comenzar a situar los elementos en cualquiera de los cuatro lados del contenedor e ir añadiendo nuevos elementos pegados a estos.
  

miércoles, 5 de abril de 2017

13. ESTRUCTURA DE LAS CARPETAS DE UN PROYECTO ANDROID

SRC:

Se encuentra toda la lógica de aplicación, todas las clases programadas en JAVA. Dentro de ella puedes definir distintos paquetes, donde puedes dividir en capas tus reglas de negocio.

Android Library:


Aquí se encuentran todas las librerías propias del SDK de android, dependiendo la versión elegida al crear el proyecto tendrá una versión u otra.


RES:

Se encuentran todos los archivos con los recursos que usan la aplicación. Las imágenes, archivos de idiomas, estilos, etc.

Drawable:

Carpeta con todas las imágenes de la app. Se subdivide en múltiples carpetas desde la versión 1.6, que contienen las imágenes en distintas resoluciones y tamaños que se usarán dependiendo el dispositivo usado.

Directorio layout:


Aquí se encuentran las distintas “pantallas” de la aplicación, es decir, los archivos xml con las interfaces visual asociadas a las activities.



Values:

Carpeta con los xml de contenido de la app. En ella puede haber definidas las constantes de la aplicación, dando la posibilidad del multidioma. También puedes definir estilos para tus componentes. Y todo tipo de configuraciones.



BIN:

Aquí se encuentran todos los archivos generados por la propia app. Como sabeis, android usa la máquina virtual dalvik, primero se traduce a los típicos archivos .class de java y posteriormente es traducido a los archivo .dex propios de android.



También esta el ejecutable de la aplicación "apk", sería el equivalente a los "exe" de windows. Es el archivo que deberías instalar en cualquier teléfono android para probar la aplicación.


GEN:


En esta carpeta esta el archivo R.class, éste contiene lo identificadores los recursos usados por tu proyecto: imágenes, layout, etc....



ASSESTS:

Carpeta donde se encuentran los archivos auxiliares de tu aplicación: imágenes, audios, vídeos... la diferencia con los que se encuentran con la carpeta "RES", es que los archivos incluidos aquí no generarán un identificador dentro del archivo R.class anteriormente descrito.

Para usar estos archivos, en vez de referenciarlos por un ID, habría que usar la ruta física como cualquier otro archivo



LIB:

Aquí irán las librerías externas importados que necesites. Por ejemplo, si deseas meter publicidad en tu app, aquí ira la librería necesaria para ello.



MANIFEST:


Archivo básico de configuración de toda aplicación android. En el se definen todas las activities de la app, sus permisos, etc.

miércoles, 22 de marzo de 2017

11. ¿COMO INSTALAR EL PLUG IN DE ANDROID EN 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.


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


3.- 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:


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


5.- En la siguiente paso veras la lista del software que se va a descargar, haz Click en Next.

6.- Seleccione Next, acepte el acuerdo de licencia y seleccione Finish.

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í:


10. ¿COMO INSTALAR ECLIPSE?

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.- Descargar la aplicación de Java JDK 6,



2.-  Cuando des clic en "JDK Download" te llevara a otra pantalla, ve a la parte de Java JDK, tendrás que aceptar una licencia y seleccionar el sistema operativo que usas (windows, mac, 32bit(x86) o 64bit(x64)....)


3.- 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).


4.- 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.


viernes, 10 de marzo de 2017

8. VERSIONES DEL SISTEMA OPERATIVO ANDROID


En la siguiente tabla se mostrara el nombre, la versión, licencia, y las características de los sistemas operativos android:

Nombre
Versión
Licencia
Características
1.-Android Apple Pie
1.0
Paga
·         Android Market Programa con un mercado para la descarga y actualización de aplicaciones.
·         Navegador Web para visualizar páginas webs en full HTML y XHTML – múltiples páginas mostradas como ventanas ("tarjetas").
·         Soporte Cámara – sin embargo esta versión carece de la opción de cambiar la resolución de la cámara, balance de blancos, calidad, etc.
·         Carpo de iconos de aplicaciones dentro de una simple carpeta en la pantalla de inicio.
·         Acceso a servidores de correo electrónico por web, soporte POP3, IMAP4 y SMTP.
2.-AndroidBanana Bread
1.1
Libre
·         Detalles y reseñas disponibles cuando un usuario busca negocios en los mapas.
·         Pantalla en llamada más larga por defecto cuando están en uso el manos libres, además la habilidad de mostrar/esconder el marcador.
·         Posibilidad de guardar archivos adjuntos en los mensajes.
·         Añadido soporte para marquesina en diseños de sistemas.
3.-AndroidCupcake
1.5
Libre
·         Soporte para teclados virtuales de terceros con predicción de texto y diccionario de usuarios para palabras personalizadas.
·         Soporte para Widgets - vistas de miniaturas de las aplicaciones que pueden ser incrustadas en otras aplicaciones (tal como la pantalla inicio) y recibir actualizaciones periódicas.
·         Grabación y rep en formatos MPEG-4 y 3GP.
·         Auto-sincronización y soporte para Bluetooth estéreo añadido (perfiles A2DP y AVRCP)
·         Características de Copiar y pegar agregadas al navegador web.
4.-Android Donut
1.6
Libre
·         Mejora en la búsqueda por entrada de texto y voz para incluir historial de favoritos, contactos y la web.
·         Habilidad de los desarrolladores de incluir su contenido en los resultados de búsqueda.
·         Motor multi-lenguaje de Síntesis de habla para permitir a cualquier aplicación de Android "hablar" una cadena de texto.
·         Búsqueda facilitada y habilidad para ver capturas de las aplicaciones en el Android Market(Google Play).
·         Galería, cámara y videocámara con mejor integración, con rápido acceso a la cámara.
5.-Android Eclair
2.0
Libre
·         Sincronización cuenta expandida, permitiendo a los usuarios agregar múltiples cuentas al dispositivo para sincronización de correo y contactos.
·         Soporte intercambio de correo, con bandeja combinada para buscar correo desde múltiples cuentas en la página.
·         Soporte Bluetooth 2.1.
·         Habilidad para tocar un foto de un contacto y seleccionar llamar, enviar SMS o correo a la persona.
·         Habilidad para en todos los mensajes SMS y MMS guardados, con eliminación de mensajes más antiguos en una conversación automáticamente cuando un límite definido se ha alcanzado.
6.-Android Froyo
2.2
Libre
·         Optimizaciones en velocidad, memoria y rendimiento.
·         Mejoras adicionales de rendimiento de aplicación, implementadas mediante compilación Just-in-time (JIT).
·          Integración del motor de JavaScript V8 de Chrome en el navegador.
·         Soporte para el servicio Android Cloud to Device Messaging (C2DM), habilitando notificaciones push
·         Soporte para Microsoft Exchange mejorado, incluyendo políticas de seguridad, auto-descubrimiento, consulta a la Global Access List (GAL), sincronización de calendario, y borrado remoto.
7.-Android Gingerbread
2.3/2.3.1
Libre
·         Actualizado el diseño de la interfaz de usuario con incrementos en velocidad y simpleza.
·         Soporte para tamaños y resoluciones de pantalla extra-grandes (WXGA y mayores).
·         Soporte nativo para SIP y telefonía por internet VoIP.
·         Entrada de texto del teclado virtual más rápida e intuitiva, con mejoras en precisión, texto sugerido y entrada por voz.
·         Mejoras en la funcionalidad de copiar/pegar, permitiendo a los usuarios seleccionar una palabra al presionar-mantener, copiar y pegar.
8.-Android Honeycomb
3.0
Libre
·         Soporte optimizado para tablets, con una nueva y "virtual" interfaz de usuario holográfica.
·         Agregada barra de sistema, con características de acceso rápido a notificaciones, estados y botones de navegación suavizados, disponible en la parte inferior de la pantalla.
·         Añadida barra de acción (Action Bar en inglés), entregando acceso a opciones contextuales, navegación, widgets u otros tipos de contenido en la parte superior de la pantalla.
·         Multitarea simplificada – tocando Aplicaciones recientes en la barra del sistema permite a los usuarios ver instantáneas de las tareas en curso y saltar rápidamente de una aplicación a otra.
·         Teclado rediseñado, permitiendo una escritura rápida, eficiente y acertada en pantallas de gran tamaño.
9.-Android Ice Cream Sandwich
4.0.0/4.0.1
Libre

·         Botones software(en pantalla) Android 3.x están ahora disponibles para usar en los teléfonos móviles.
·         Separación de widgets en una nueva pestaña, listados de forma similar a las aplicaciones.
·         Facilidad para crear carpetas, con estilo de arrastrar y soltar.
·         Lanzador personalizable.
·         Buzón de voz mejorado con la opción de acelerar o retrasar los mensajes del buzón de voz.
·         Funcionalidad de pinch-to-zoom en el calendario.
10.-Android Jelly Bean (Michel)
4.3
Libre
·         Soporte para Bluetooth de baja energía para máximo 4 dispositivos
·         OpenGL ES 3.0
·         Modo de perfiles con acceso restringido
·         DRM APIs de mayor calidad
·         Mejora en la escritura