Apúntate

Apúntate a la comunidad Android de Madrid!




Agradecemos

Agradecemos a las siguientes comunidades por su apoyo e información:

   






         



Qué es Android

Android es un stack de software para dispositivos móviles que incluye un sistema operativo Linux, middleware y aplicaciones clave. El Android SDK provee las herramientas y APIs necesarias para comenzar a desarrollar aplicaciones en la plataforma Android usando Java.

Características

Framework de aplicaciones permite el reuso y el reemplazo de los componentes.
Máquina virtual Dalvik optimizada para dispositivos móviles.
Navegador integrado basado en el motor open source WebKit.
Graficos optimizados con librerias graficas 2D, graficas 3D basadas en OpenGL ES 1.0.
SQlite para almacenamiento de datos estructurado.
Soporte multimedia
para formatos comunes de audio, video e imágenes planas (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF).
Telefonía GSM dependiente del dispositivo.
Bluetooth, EDGE, 3g y Wifi dependiente del dispositivo.
Cámara, GPS, brújula y acelerómetro dependiente del dispositivo.
Ambiente de desarrollo enriquecido incluyendo un emulador de dispositivo, herramientas de debugging y plugin para Eclipse.

Arquitectura de Android

El diagrama muestra los componentes del sistema operativo de Android, cada sección se describe a continuación:


Aplicaciones: Las aplicaciones base incluirán un cliente de email, programa de SMS, calendario, mapas, navegador, contactos, y otros. Todas las aplicaciones escritas en el lenguaje de programación Java.

Framework de aplicaciones: Los desarrolladores tienen acceso a las mismos APIs utilizadas en las aplicaciones base (core). La arquitectura está diseñada para simplificar el reuso de componentes; cualquier aplicación puede publicar sus capacidades y cualquier otra aplicación puede luego hacer uso de esas capacidades (sujeto a reglas de seguridad del framework). Éste mismo mecanismo permite que los componentes sean reemplazados por el usuario.

Librerías: Android incluye un set de librerías C/C++ usadas por varios componentes del sistema. Estas capacidades se exponen a los desarrolladores a través del framework de aplicaciones de Android. Algunas son: System C library (implementación librería C standard), librerías de medios, librerías de gráficos, 3D, SQLite, entre otras.

Runtime de Android: Android incluye un set de librerías base que proveen la mayor parte de las funcionalidades disponibles en las librerías base del lenguaje de programación Java. Cada aplicación Android corre su propio proceso, con su propia instancia de la Máquina Virtual Dalvik. Dalvik ha sido escrito de forma que un dispositivo puede correr múltiples máquinas virtuales de forma eficiente. Dalvik ejecuta archivos en el formato Dalvik Executable (.dex), el cual está optimizado para memoria mínima. La Máquina Virtual está basada en registros, y corre clases compiladas por el compilador de Java que han sido transformadas al formato .dex por la herramienta incluida "dx".

Núcleo - Linux: Android depende de un Linux versión 2.6 para los servicios base del sistema como seguridad, gestión de memoria, gestión de procesos, stack de red, y modelo de drivers. El núcleo también actúa como una capa de abstracción entre el hardware y el resto del stack de software.