SlideShare uma empresa Scribd logo
1 de 16
ANDROID BEGINS  Mg. Fabio García Ramírez Mayo 26 del 2011
Agenda ,[object Object]
EVOLUCION
FUNCIONALIDADES
DISPOSITIVOS
ARQUITECTURA
HERRAMIENTAS DE DESARROLLO
ESTRUCTURA DE APLICACIONES
DEMO
Definiendo Android Android es un sistema operativo basado en Linux para dispositivos móviles, tales como teléfonos inteligentes o tablets. Fue desarrollado inicialmente por Android Inc., una firma comprada por Google en 2005. Es el principal producto de la Open Handset Alliance, un conglomerado de fabricantes y desarrolladores de hardware, software y operadores de servicio. Las unidades vendidas de teléfonos inteligentes con Android se ubican en el primer puesto en los Estados Unidos, en el segundo y tercer trimestre de 2010, con una cuota de mercado de 43,6% en el tercer trimestre. Fuente:  http://es.wikipedia.org/wiki/Android
Definiendo Android Fuente:  http://es.wikipedia.org/wiki/Android
Evolución Fuente:  http://www.olivetelecom.in/mobile-phone/android-phones/images/android-timeline.jpg Android Evolutions http://t0.gstatic.com/images?q=tbn:ANd9GcT_cbkGNcpHCn_ojn_EL5BPzccNFVQfwBYvnuLz8NEF2cmDmEXj
Evolución Fuente:  http://www.visionmobile.com/blog/wp-content/uploads/2010/10/Android-Version-Release-Timeline.png Android Evolutions http://t0.gstatic.com/images?q=tbn:ANd9GcT_cbkGNcpHCn_ojn_EL5BPzccNFVQfwBYvnuLz8NEF2cmDmEXj
Evolución Fuente: http://1.bp.blogspot.com/-6xS49hZKCYQ/TWhiGO1GELI/AAAAAAAAJ4A/hy58q_JULOQ/s1600/android-timeline-20090104-2.jpg Android Evolutions http://t0.gstatic.com/images?q=tbn:ANd9GcT_cbkGNcpHCn_ojn_EL5BPzccNFVQfwBYvnuLz8NEF2cmDmEXj
Funcionalidades ,[object Object]
Framework de aplicación que habilita la reutilización y reemplazo de componentes.

Mais conteúdo relacionado

Mais procurados (9)

Android
AndroidAndroid
Android
 
Android
AndroidAndroid
Android
 
Android 2014
Android 2014Android 2014
Android 2014
 
Android
AndroidAndroid
Android
 
Android
Android Android
Android
 
Trabajo tecnologia
Trabajo tecnologiaTrabajo tecnologia
Trabajo tecnologia
 
Tecnologia android
Tecnologia androidTecnologia android
Tecnologia android
 
Android
Android Android
Android
 
Que es el Android; Sistema operativo
Que es el Android; Sistema operativoQue es el Android; Sistema operativo
Que es el Android; Sistema operativo
 

Semelhante a Android Begins

Smartphone elii y maria
Smartphone elii y maria Smartphone elii y maria
Smartphone elii y maria
eliymari
 
Valentinasilvaosorio android
Valentinasilvaosorio androidValentinasilvaosorio android
Valentinasilvaosorio android
ValentinaSilvaO
 
Android
AndroidAndroid
Android
Xzeron
 

Semelhante a Android Begins (20)

tecnologia android
tecnologia androidtecnologia android
tecnologia android
 
Galaxy y (4)
Galaxy y (4)Galaxy y (4)
Galaxy y (4)
 
Sistema android
Sistema androidSistema android
Sistema android
 
Smartphone elii y maria
Smartphone elii y maria Smartphone elii y maria
Smartphone elii y maria
 
Tecnología android
Tecnología androidTecnología android
Tecnología android
 
Android
AndroidAndroid
Android
 
Practica 1
Practica 1Practica 1
Practica 1
 
Practica 1
Practica 1Practica 1
Practica 1
 
Valentinasilvaosorio android
Valentinasilvaosorio androidValentinasilvaosorio android
Valentinasilvaosorio android
 
Android
AndroidAndroid
Android
 
Android dipositivas
Android dipositivasAndroid dipositivas
Android dipositivas
 
diapositivas denalleli
diapositivas denallelidiapositivas denalleli
diapositivas denalleli
 
Android
AndroidAndroid
Android
 
Android
AndroidAndroid
Android
 
Oyuky Rojas Badillo dn13..
Oyuky Rojas Badillo dn13..Oyuky Rojas Badillo dn13..
Oyuky Rojas Badillo dn13..
 
Android
AndroidAndroid
Android
 
Android otro nivel
Android otro nivelAndroid otro nivel
Android otro nivel
 
Jessica mendia lopez dn13 (1)
Jessica mendia lopez dn13 (1)Jessica mendia lopez dn13 (1)
Jessica mendia lopez dn13 (1)
 
android
androidandroid
android
 
Sistemas Operativos Moviles
Sistemas Operativos MovilesSistemas Operativos Moviles
Sistemas Operativos Moviles
 

Mais de Fabio García Ramírez

Examen I Periodo - Grado 10-03 - Año 2013
Examen I Periodo - Grado 10-03 - Año 2013Examen I Periodo - Grado 10-03 - Año 2013
Examen I Periodo - Grado 10-03 - Año 2013
Fabio García Ramírez
 
Examen I Periodo - Grado 10-02 - Año 2013
Examen I Periodo - Grado 10-02 - Año 2013Examen I Periodo - Grado 10-02 - Año 2013
Examen I Periodo - Grado 10-02 - Año 2013
Fabio García Ramírez
 
Examen Informática I Periodo - Grado Undecimo - 2013
Examen Informática I Periodo - Grado Undecimo - 2013Examen Informática I Periodo - Grado Undecimo - 2013
Examen Informática I Periodo - Grado Undecimo - 2013
Fabio García Ramírez
 
Examen Informática - Grado 9o - I Periodo
Examen Informática - Grado 9o - I PeriodoExamen Informática - Grado 9o - I Periodo
Examen Informática - Grado 9o - I Periodo
Fabio García Ramírez
 
Moodle: Ambiente Virtual de Aprendizaje
Moodle: Ambiente Virtual de AprendizajeMoodle: Ambiente Virtual de Aprendizaje
Moodle: Ambiente Virtual de Aprendizaje
Fabio García Ramírez
 

Mais de Fabio García Ramírez (15)

Serguey brin-biography
Serguey brin-biographySerguey brin-biography
Serguey brin-biography
 
Heartbleed
Heartbleed Heartbleed
Heartbleed
 
Examen I Periodo - 10-05 - Año 2013
Examen I Periodo - 10-05 - Año 2013Examen I Periodo - 10-05 - Año 2013
Examen I Periodo - 10-05 - Año 2013
 
Examen iperiodo 10-04
Examen iperiodo 10-04Examen iperiodo 10-04
Examen iperiodo 10-04
 
Examen I Periodo - Grado 10-03 - Año 2013
Examen I Periodo - Grado 10-03 - Año 2013Examen I Periodo - Grado 10-03 - Año 2013
Examen I Periodo - Grado 10-03 - Año 2013
 
Examen I Periodo - Grado 10-02 - Año 2013
Examen I Periodo - Grado 10-02 - Año 2013Examen I Periodo - Grado 10-02 - Año 2013
Examen I Periodo - Grado 10-02 - Año 2013
 
Examen I Periodo Grado 10-01 - 2013
Examen I Periodo Grado 10-01 - 2013Examen I Periodo Grado 10-01 - 2013
Examen I Periodo Grado 10-01 - 2013
 
Examen Informática I Periodo - Grado Undecimo - 2013
Examen Informática I Periodo - Grado Undecimo - 2013Examen Informática I Periodo - Grado Undecimo - 2013
Examen Informática I Periodo - Grado Undecimo - 2013
 
Examen Informática - Grado 9o - I Periodo
Examen Informática - Grado 9o - I PeriodoExamen Informática - Grado 9o - I Periodo
Examen Informática - Grado 9o - I Periodo
 
Plan de Area y Asignatura de Tecnologia e Informatica 2013
Plan de Area y Asignatura de Tecnologia e Informatica 2013Plan de Area y Asignatura de Tecnologia e Informatica 2013
Plan de Area y Asignatura de Tecnologia e Informatica 2013
 
Moodle: Ambiente Virtual de Aprendizaje
Moodle: Ambiente Virtual de AprendizajeMoodle: Ambiente Virtual de Aprendizaje
Moodle: Ambiente Virtual de Aprendizaje
 
Html
HtmlHtml
Html
 
Sistema Operativo Windows XP
Sistema Operativo Windows XPSistema Operativo Windows XP
Sistema Operativo Windows XP
 
Internet
InternetInternet
Internet
 
Informatica en la Educacion
Informatica en la EducacionInformatica en la Educacion
Informatica en la Educacion
 

Último

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
nicho110
 

Último (10)

Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 

Android Begins

Notas do Editor

  1. La arquitectura de Android está formada por una pila de capas de software que interactuan entre ellas. En términos de desarrollo, esta división en capas facilita al desarrollador la creación de aplicaciones, ya que todo está perfectamente estructurado para que se pueda acceder a las capas más bajas utilizando las librerías disponibles para ello, evitando así tener que programar a bajo nivel las funcionalidades necesarias para el desarrollo de una aplicación. La capa más baja de la arquitectura de Android es el núcleo del sistema. Android se apoya en el kernel de Linux (en su versión 2.6). En esta capa de la arquitectura Android tiene acceso a la gestión de memoria y de los procesos, la pila de red y el modelo de drivers. El sistema incluye una máquina virtual de Java (JVM), que se llama Dalvik, que ha sido creada por Google para dispositivos con poca memoria y poca capacidad de proceso. En Android, cada aplicación corre en su propio proceso y tiene su propia instancia en la máquina virtual Dalvik. Dalvik ejecuta archivos .dex en lugar de los clásicos .class de la máquina virtual de Java de escritorio. Éstos están más optimizados para los dispositivos móviles y son más compactos. En esta máquina virtual no disponemos de toda la API de JavaSE o JavaME, sino que podemos utilizar un subconjunto llamado Core Libraries. Las librerías que puede utilizar el desarrollador en las capas superiores están escritas en C/C++. Las funcionalidades que ofrecen estas librerías son accesibles desde el Framework de aplicaciones. Es decir, un API de Java, que es el lenguaje que se utiliza para programar aplicaciones para Android. El Framework de aplicaciones proporciona al desarrollador todo lo necesario para programar aplicaciones para Android. Como hemos visto antes, a través de éste podemos acceder a la librerías subyacentes que proporciona el sistema, como a las librerías para la gestión de bases de datos (SQLite), para las fuentes de texto (FreeType), para el navegador (WebKit) o el cifrado de comunicaciones (SSL), entre otras.
  2. La máquina virtual Dalvik utiliza el kernel de Linux para realizar tareas a bajo nivel. Es posible escribir aplicaciones en C/C++ para ejecutarlas directamente en el kernel de Linux, aunque rara vez será necesario hacer esto. Aún así, si tu aplicación requiere de mucha eficiencia y velocidad es posible crear aplicaciones en C/C++ mediante el Native Development Kit (NDK) que provee Android. Ficheros ejecutables Dalvik (.dex) La máquina virtual Dalvik utiliza los ficheros ejecutables Dalvik (.dex) que están optimizados para garantizar el mínimo consumo de memoria. En el proceso de compilación la máquina virtual utiliza los ficheros .class generados y los combina en uno o más ficheros .dex. Reutiliza información duplicada en múltiples ficheros .class para así reducir a la mitad el espacio requerido de un fichero .jar tradicional. Por ejemplo, el tamaño del fichero .dex del navegador web de Android ocupa unos 200K, mientras que la versión equivalente de esta aplicación como fichero .jar ocupa unos 500K.
  3. La máquina virtual Dalvik utiliza el kernel de Linux para realizar tareas a bajo nivel. Es posible escribir aplicaciones en C/C++ para ejecutarlas directamente en el kernel de Linux, aunque rara vez será necesario hacer esto. Aún así, si tu aplicación requiere de mucha eficiencia y velocidad es posible crear aplicaciones en C/C++ mediante el Native Development Kit (NDK) que provee Android. Ficheros ejecutables Dalvik (.dex) La máquina virtual Dalvik utiliza los ficheros ejecutables Dalvik (.dex) que están optimizados para garantizar el mínimo consumo de memoria. En el proceso de compilación la máquina virtual utiliza los ficheros .class generados y los combina en uno o más ficheros .dex. Reutiliza información duplicada en múltiples ficheros .class para así reducir a la mitad el espacio requerido de un fichero .jar tradicional. Por ejemplo, el tamaño del fichero .dex del navegador web de Android ocupa unos 200K, mientras que la versión equivalente de esta aplicación como fichero .jar ocupa unos 500K.
  4. Una aplicación Android está conformada por componentes, los cuales están definidos en el manifiesto de la aplicación(AndroidManifest.xml), donde se indica adicionalmente, los permisos, requisitos de hardware, plataforma, entre otros. Los componentes disponibles son: Activities(Actividades) , representan la capa de presentación de la aplicación. Utilizan vistas para presentar la UI. Views(Vistas), las cuales repr esentan los componentes visuales de la aplicación Services(Servicios), componentes que se ejecutan en background, actualizan los datos de las actividades y emiten notificaciones. Proveedores de Contenido(Content Providers), se encargan de gestionar las bases de datos para las aplicaciones. Intents(Intenciones), que gestionan el paso de mensajes entre Actividades, Servicios o todo el sistema. Broadcast Receivers(Receptores de Broadcast) , permiten que las Aplicaciones escuchen las intenciones de Broadcast, que cumplan unos determinados criterios. Notifications(Notificaciones) , representan el mecanismo para que las aplicaciones puedan notificar al usuario, sin interrumpir la actividad en primer plano
  5. Una aplicación Android está conformada por componentes, los cuales están definidos en el manifiesto de la aplicación(AndroidManifest.xml), donde se indica adicionalmente, los permisos, requisitos de hardware, plataforma, entre otros. Los componentes disponibles son: Activities(Actividades) , representan la capa de presentación de la aplicación. Utilizan vistas para presentar la UI. Views(Vistas), las cuales repr esentan los componentes visuales de la aplicación Services(Servicios), componentes que se ejecutan en background, actualizan los datos de las actividades y emiten notificaciones. Proveedores de Contenido(Content Providers), se encargan de gestionar las bases de datos para las aplicaciones. Intents(Intenciones), que gestionan el paso de mensajes entre Actividades, Servicios o todo el sistema. Broadcast Receivers(Receptores de Broadcast) , permiten que las Aplicaciones escuchen las intenciones de Broadcast, que cumplan unos determinados criterios. Notifications(Notificaciones) , representan el mecanismo para que las aplicaciones puedan notificar al usuario, sin interrumpir la actividad en primer plano Fuente: http://www.greenandroid.es/2011/03/19/componentes-aplicacion-android/
  6. src/: contiene el código fuente de la aplicación. es/greenandroid/android/: paquete que contiene el código de la aplicación. Puede haber varios paquetes que incluyan código que responda a diversas funcionalidades. Main.java: contiene el código de la actividad principal (la actividad principal no tiene por qué llamarse así). bin/: contiene el fichero .apk y los recursos compilados. jni/: contiene código nativo desarrollado con el NDK. gen/: contiene los ficheros .java generados por el ADT. es/greenandroid/android/: paquete que contiene el código de la aplicación. Puede haber varios paquetes que incluyan código que responda a diversas funcionalidades. R.java: fichero fuente para manejar recursos desde la aplicación: no debe modificarse. Android X.Y/ ó Google APIs [Android X.Y]/: contiene el SDK completo. X.Y es el número de versión. android.jar: librerías del SDK de Android. Aparece cuando usamos Android X.Y. o Google APIs [Android X.Y]. maps.jar: librerías de mapas de Google Maps. Sólo aparece cuando usamos Google APIs [Android X.Y]. assets/: está vacío. Puedes utilizarlo para almacenar ficheros en bruto. Los ficheros guardados aquí se empaquetan en el fichero .apk. Se puede navegar por este directorio utilizando el AssetManager. res/: contiene los recursos de la aplicación. anim/: contiene ficheros XML que se compilan en animaciones. color/: contiene ficheros XML que describen colores. drawable/: contiene imágenes y ficheros XML que describen formas y objetos Drawable. Hay tres tipos: hdpi (alta definición), ldpi (baja definición), mdpi (media definición). icon.png: icono de la aplicación que se muestra en el lanzador de aplicaciones del dispositivo. layout/: contiene ficheros XML que se compilan en layouts de panatalla o en partes de pantalla. menu/: contiene ficheros XML que definen menús de aplicación. raw/: es similar al directorio assets pero a estos recursos se accede mediante la clase R. values/: contiene ficheros XML que se compilan en diversos tipos de recursos. A diferencia de los recursos del directorio res/, los recursos escritos en los ficheros XML en este directorio no son referenciados por su nombre de fichero. Contiene, entre otros ficheros, el fichero de internacionalización strings.xml. xml/: contiene ficheros XML que configuran componentes de la aplicación, como las preferencias de pantalla. libs/: contiene librerías privadas. AndroidManifest.xml: fichero que describe la aplicación: componentes, permisos, capacidades, … build.properties: contiene propiedades modificadas para el sistema de compilación. En Eclipse no se utiliza. build.xml: fichero Ant del proyecto. En Eclipse no se utiliza. default.properties: fichero generado automáticamente que define como construir la aplicación.