Índice

¿Qué es Android?

Android es un conjunto de software para dispositivos móviles que incluye Sistema Operatívo, middleware y las aplicaciones principales. El SDK de Android proporciona las herramientas y APIs necesarias para comenzar a desarrollar aplicaciones para la plataforma Android usando el lenguaje de programación Java.



Características

Arquitectura Android

El siguiente diagrama muestra los principales componentes del sistema operatívo Android. Cada sección se describe con más detalle abajo.

Aplicaciones

Android viene por defecto con un conjunto de aplicaciones básicas como un cliente de correo electrónico, programa de SMS, calendario, mapas, navegador, contactos etc. Todas las aplicaciones están escritas en java.

Framework

Al proporcionar una plataforma de desarrollo libre, Android ofrece a los desarrolladores la posibilidad de construir aplicaciones muy solidas e innovadoras. Los desarrolladores tienen la libertad de aprovechar el hardware del dispositivo, acceder a la información de localización, ejecutar servícios en segundo plano, fijar alarmas, añadir notificaciones a la barra de estado, y mucho, mucho más.

Los desrrolladores tienen pleno acceso a las mismas APIs usadas por las apliaciones principales. La arquitectura de la aplicación está diseñada para simplificar la reutilización de los componentes; cualquier aplicación puede publicar sus capacidades y cualquier otra aplicación puede hacer uso de esas capacidades (sujeto a las restricciones de seguridad del framework). Este mismo mecanismo permite que los componentes sean reemplazados por los usuarios.

Esencialmente todas las aplicaciones son un conjunto de servicios y sistemas, incluyendo:

Para obtener más detalles y un tutorial sobre las aplicaciones, vea el Notepad Tutorial.

Librerías

Android incluye un conjunto de librerías C/C++ usadas por varios componentes del sistema Android. Estas capaciddes están expuestas para los desarrolladores a través del framework android. Abajo se listan algunas de las librerías principales:

Android Runtime

Android incluye un conjunto de librerías principales que proporcionan la mayor parte de la funcionalidad disponible en la librerías de Java.

Cada aplicación android se ejecuta en su propio proceso, que es una instancia propia de la máquina virtual de Dalvik. Dalvik ha sido escrito para que un dispositivo pueda ejecutar múltiples MVs eficientemente. La máquina virtual de Dalvik ejecuta archivos en formato .dex(que son sus ejecutables). Este formato está optimizado para consumir el mínimo de memória. La MV está basada en registros, y ejecuta clases compiladas en java que posteriormente se transforman al formato .dex por la herramienta “dx”

La MV de Dalvik se basa en el kernel de Linux para obtener su funcionalidad, como hilos(Threading) y administración de memória a bajo nivel.

El kernel Linux

Android se basa en la versión 2.6 de linux para el sistema de servícios esenciales como seguridad, gestión de memoria, gestión de procesos, pila de red y el conductor de modelos. El kernel también actua como una capa de abstracción entre el hardware y el resto del software.

Siguiente: Fundamentos aplicaciones Android – (Parte I)