Sesin 1 - Introduccin
1. Introduccin y contexto actual 2. Arquitectura de Android 3. Instalacin del Entorno de Desarrollo 4. Primer programa en Android
Reconocer la importancia de las tecnologas mviles y el desarrollo tecnolgico de los telfonos inteligentes (smartphones) en el mercado.
Reconocer la importancia de las tecnologas mviles y el desarrollo tecnolgico de los telfonos inteligentes (smartphones) en el mercado.
A nivel global las aplicaciones se han convertido en uno de los recursos ms utilizados por los usuarios de dispositivos mviles, las grandes tendencias en el desarrollo para este tipo de dispositivos plantea cinco reas de accin para los programadores que en la actualidad adquieren ms importancia, estos son:
Educacin Entretenimiento Aplicaciones de uso personal Sector Financiero Sector corporativo y empresarial en general.
Android naci oficialmente y fue anunciado el 5 de noviembre del ao 2007, si bien no fue hasta el 21 de octubre del ao 2008 cuando vio por primera vez la luz el primer smartphone equipado con este sistema operativo, fue el TMobile G1, un smartphone fabricado por HTC y desarrollado junto con Google. Das antes de este lanzamiento comercial, el 23 de septiembre del 2008, Google celebraba una rueda de prensa donde se presentaba este dispositivo junto con la versin 1.0 de Android.
Diseo de dispositivo (pantallas de gran resolucin, 2D, 3D, Open Gl, etctera) Almacenamiento (SQLite) Conectividad (GSM. EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, WIFI, LTE, HSDPA, HSPA+ WiMAX) Mensajera: (SMS, MMS, Push Messaging) Navegador Web (WebKit, V8, HTML5) Soporte JAVA (Mquina virtual DALVIK, J2ME) Soporte Multimedia (WebM, H.263, H.264 (en 3GP o MP4), MPEG-4 SP, AMR, AMR-WB (en un contenedor 3GP), AAC, HE-AAC (en contenedores MP4 o 3GP), MP3, MIDI, Ogg, Vorbis, WAV, JPEG, PNG, GIF y BMP)
Soporte para Streaming (RTP/RTSP (3GPP PSS, ISMA), HTML5, Flash, Silverligth) Soporte para hardware adicional (Cmara, GPS, Pantallas, Giroscopio, magnetmetro, sensores, termmetro, etctera). Google Play (tienda de aplicaciones) Multi touch (soporte de gestos) Thetering
Multitarea
Video llamada Caractersticas basadas en la voz
2. Arquitectura de Android
Objetivos
Reconocer algunos de los elementos principales de la arquitectura de Android. Identificar los componentes a bajo nivel que componen la plataforma Android
2. Arquitectura de Android
2. Arquitectura de Android
Aplicaciones base (llamadas, sms, calendario, etctera) Framework (SDK para acceder y reutilizar funciones nativas) Bibliotecas (bibliotecas de medios, bibliotecas de grficos, 3D y SQLite, entre otras) Runtime de Android (Dalvik) Ncleo Linux (seguridad, gestin de memoria, gestin de procesos, pila de red y modelo de controladores)
2. Arquitectura de Android
Conceptos bsicos
Vista (View) Actividad (Activity) Intento (Intent) Servicio (Service) Proveedor de contenidos (Content Provider)
Instalar y poner en marcha la plataforma de desarrollo para hacer aplicaciones para la plataforma Android, con la posibilidad de actualizar las versiones del SDK.
Requisitos
Java, JDK versin 5.0 o superior. IDE de Eclipse para desarrolladores JAVA
Android SDK
Plug in ADT para Eclipse
Descargar y almacenar en el disco duro (preferiblemente en c:/Program Files) Vnculo de la descarga: http://developer.android.com/sdk/index.html
Ejecutar Eclipse y buscar la opcin Help->Install New Software. Una vez ah presionar clic en Add y en el dilogo que aparece escribir name: Android Plugin location: https://dlssl.google.com/android/eclipse/ En la ventana Available Software ahora debera aparecer Developer Tools, seleccionar el checkbox asociado y deberan seleccionarse los tems Android DDMS y Android Development Tools, presionar clic en Next dos veces y luego en Finish.
Una vez instalado el complemento de Eclipse para Android es necesario hacer la descarga las SDK necesarias segn las plataformas. La descarga se puede hacer desde el Android SDK Manager que se encuentra en la carpeta de Android que fue descargada en el punto 3.3
En Eclipse ir a la pestaa File >> New >> Android Project y se seleccionan las propiedades del proyecto de Android. En Project Name escribir HelloWorld, luego seleccionar la versin de Android para la que se crear la aplicacin. En el campo Application name tambin escribir Hello World
Como paquete indicamos co.edu.sena.android.inicio En Create Activity ponemos Main, sta ser la actividad principal. Posteriormente pulsamos Finish.
src: Carpeta que contiene el cdigo fuente de la aplicacin. Como puedes observar los ficheros Java se almacenan en un espacio de nombres. gen: Carpeta que contiene el cdigo generado de forma automtica por el SDK. Nunca hay que modificar de forma manual estos ficheros. Dentro encontraremos: Android Dependencies: Libreras asociadas al proyecto.
BuildConfig.java: Define la constante DEBUG para que desde Java puedas saber si tu aplicacin est en fase de desarrollo.
R.java: Define una clase que asocia los recursos de la aplicacin con identificadores. De esta forma los recursos podrn ser accedidos desde Java.
Android x.x: Cdigo JAR, el API de Android segn la versin seleccionada.
assets: Carpeta que puede contener una serie arbitraria de ficheros o carpetas que podrn ser utilizados por la aplicacin (ficheros de datos, fuentes,). A diferencia de la carpeta res, nunca se modifica el contenido de los ficheros de esta carpeta ni se les asociar un identificador.
bin: En esta carpeta se compila el cdigo y se genera el .apk, fichero comprimido que contiene la aplicacin final lista para instalar.
libs: Cdigo JAR con libreras se quieran usar en el proyecto. Se ha aadido una librera android-support cuyo objetivo es aadir nuevas funcionalidades que no aparecan en el nivel de API 4 (recuerde que es el nivel de API mnimo que se ha indicado) y que aparecien en versiones ms recientes del SDK.
res: Carpeta que contiene los recursos usados por la aplicacin. Como veremos en el siguiente captulo las subcarpetas pueden tener un sufijo si queremos que el recurso solo se cargue al cumplirse una condicin. Por ejemplo hdpi significa que solo ha de cargar los recursos contenidos en esta carpeta cuando el dispositivo donde se instala la aplicacin tiene una densidad grfica alta (>180dpi); v11significa que el recurso solo ha de cargarse en un dispositivo con nivel de API 11 (v3.0).
drawable: En esta carpeta se almacenan los ficheros de imgenes (JPG o PNG) y descriptores de imgenes en XML. menu: Ficheros XML con los mens de cada actividad.
res
layout: Contiene ficheros XML con vistas de la aplicacin. Las vistas nos permitirn configurar las diferentes pantallas que compondrn la interfaz de usuario de la aplicacin. Se utiliza un formato similar al HTML usado para disear pginas Web. values: Tambin utilizaremos ficheros XML para indicar valores del tipo string, color o estilo. De esta manera podremos cambiar los valores sin necesidad de ir al cdigo fuente. Por ejemplo, nos permitira traducir una aplicacin a otro idioma. anim: Contiene ficheros XML con animaciones Tween.
res
xml: Otros ficheros XML requeridos por la aplicacin. animator: Contiene ficheros XML con animaciones de propiedades.
AndroidManifest.xml: Este fichero describe la aplicacin Android. En l se indican las actividades, intenciones, servicios y proveedores de contenido de la aplicacin. Tambin se declaran los permisos que requerir la aplicacin. Se indica la versin mnima de Android para poder ejecutarla, el paquete Java, la versin de la aplicacin, etc.
ic_launcher-web.png: Icono de la aplicacin de gran tamao para ser usado en pginas Web. El nombre puede variar si se indic uno diferente en el proceso de creacin del proyecto. Ha de tener una resolucin de 512x512 (con alfa). proguard-project.txt: Fichero de configuracin de la herramienta ProGuard, que te permite optimizar y ofuscar el cdigo generado. Es decir, se obtiene un .apk ms pequeo y donde resulta ms difcil hacer ingeniera inversa. default.properties: Fichero generado automticamente por el SDK. Nunca hay que modificarlo. Se utiliza para comprobar la versin del API y otras caractersticas cuando se instala la aplicacin en el terminal.
Resumen
Al concluir esta sesin usted debe estar en capacidad de reconocer e identificar la importancia de la plataforma Android como soporte de movilidad en la tecnologa celular.
Tambin reconocer las versiones de Android y algunos de los cambios ms importantes entre una versin y otra.
Deber comprender someramente la arquitectura del sistema operativo. Habr instalado el entorno de desarrollo de aplicaciones Android (JDK, Eclipse, Android SDK) Sabr como ejecutar una aplicacin de Android Identificar los distintos tipos de carpetas y archivos necesarios para un proyecto de desarrollo de Android
Preguntas?
Gracias!