Sistema operativo android

Transcripción

Sistema operativo android
Sistema adroid
1
Sistema operativo android
Android
es un sistema operativo basado
en Linux y orientado a dispositivos móviles,
como teléfono inteligente y tablets. Fue
desarrollado inicialmente por Android Inc., una
firma comprada por Google en el 2005. Es el
principal
producto
de
la
Open
Handset
Alliance, un conglomerado de fabricantes y
desarrolladores de hardware, software y
operadores de servicio.
Android es una solución completa de software de código libre para teléfonos y dispositivos
móviles. Es un paquete que engloba un sistema operativo, un "runtime" de ejecución basado en
Java (más sobre esto posteriormente), un conjunto de librerías de bajo y medio nivel y un
conjunto inicial de aplicaciones destinadas al usuario final. Se distribuye bajo una licencia
Apache,
una
de
versión
licencia
código
libre
permisiva
propietario.
La
que
elección
permite
de
una buena cantidad de análisis y reacciones.
Las características que presenta son:
Diseño de dispositivo,
Almacenamiento,
Conectividad,
Mensajería,
Navegador web,
Soporte de Java,
Soporte multimedia,
Market,
Multi-táctil,
Soporte de hardware,
Bluetooht y videollamada.
la
2,
la
ASL2
integración
sobre
GPL
con
ha
soluciones
provocado
Sistema adroid
2
.
El sistema Android tiene las siguientes ventajas:
Las ventajas que tiene son la opción multitarea, tiene una bateria extraíble, presenta un código
abierto y puede instalarse en todo tipo de dispositivos
Facilidad de uso: Cualquier persona sin ningún conocimiento instala y desinstala
aplicaciones en unos segundos.
Miles de aplicaciones gratuitas
De serie viene preparada (siempre y cuando seas usuario de Gmail) para funcionar en unos
segundos.
La sensación es que es un teléfono tactil rápido, y que nunca se queda colgado.
Las aplicaciones en segunda plano simplemente alucinantes
El sistema Android tiene las siguientes desventajas:
Las desventajas son que no es fácil de sincronizar, hay un uso intensivo de datos sin control
ninguno y no hay marcación rápida en la aplicación teléfono.
No es fácil de sincronizar con tus contactos como no uses los de Gmail
Uso intensivo de datos sin control ninguno.
Las aplicaciones nunca tienes la sensación de que las cierras simplemente desaparecen
No hay marcación rápida en la aplicación teléfono (algo fundamental en un táctil)
Arquitectura
Android proporciona un paquete completo de
software a todos los niveles:
Un kernel linux que sirve como base de la pila
de software y se encarga de las funciones más
básicas del sistema: gestión de drivers,
seguridad, comunicaciones, etc.
Una capa de librerías de bajo nivel en C y
C++, como SQLite para persistencia de datos;
SGL, desarrollada por Skia, otra adquisición de
Google; OpenGL ES para gestión de gráficos
3D, con aceleración 3D opcional y Webkit como navegador web embebido y motor de
rendeado HTML.
Un framework para el desarrollo de aplicaciones, dividido en subsistemas para gestión del
sistema como el "package manager"; gestión del hardware del teléfono anfitrión
Sistema adroid
3
("telephony manager") o acceso a APIs sofisticadas de geolocalización o mensajería XMPP.
También incluye un sistema de vistas para manejar el interfaz de usuario de las
aplicaciones, que incluyendo posibilidad de visualización de mapas o renderizado html
directamente en el interfaz gráfico de la aplicación.
Una suite de aplicaciones (navegador, agenda, gestión del teléfono)
Las aplicaciones Android están programadas en Java, pero no corriendo sobre Java ME, sino
sobre Dalvik, una máquina virtual Java desarrollada "ex profeso" por Google y optimizada para
dispositivos empotrados y en la que los fuentes se compilan a ficheros de "bytecode" *.dex. La
creación de una VM propia es un movimiento estratégico que permite a Google evitar conflictos
con Sun por la licencia de la máquina virtual, así como asegurarse el poder innovar y modificar
ésta sin tener que batallar dentro del JCP.
Estructura de una aplicación Android
La estructura de una aplicación Android está definida por la interacción de distintos
componentes, haciendo énfasis en la "agrupación debil" de distintas piezas. La aplicación hará
uso de las distintas APIs expuestas por Android, de forma que los componentes encargados de
realizar cada tarea puedan ser manipulados o reemplazados sin problemas, asegurando la máxima
flexibilidad. Por ejemplo, una aplicación puede permitir al usuario elegir fotos mediante el
componente "Galería" o, por ejemplo, reemplazar esa "Galería" por una selección de fotos a
través de un servicio online. Los principales componentes de una aplicación serían:
Activity
Representa cada una de las principales tareas que el usuario puede llevar a cabo en la aplicación.
Típica (aunque no necesariamente) corresponderá a una pantalla específica de la aplicación y,
también normalmente, una "activity" será el punto de entrada (pantalla inicial) de nuestra
aplicación. Desde ella se invocarán las vistas, específicas o layouts, para la aplicación.
IntentReceiver
Permite a nuestra aplicación declarar ciertos "callbacks" que responderán a cambios en el estado
del terminal. P.ej. llamada o email recibido, cambio en la geolocalización, etc.
Service
Una tarea que corre en el background y que puede y debe ejecutarse sin interacción con el
usuario. Una aplicación puede mandar los mensajes necesarios a un determinado servicio activo.
Sistema adroid
4
ContentProvider
Establece una capa que permite a las distintas aplicaciones compartir datos. Con independencia
del almacenamiento local que utilicen para sus propósitos, las aplicaciones necesitan declarar
ContentProviders para poner a disposición de otros procesos los datos que consideren
necesarios.
Estos son algunos de las principales, pero no las únicas piezas de construcción de la aplicación.
También es interesante que se defina como pieza de primer nivel, el sistema de notificaciones en
pantalla, que se recomienda como principal vía de comunicación con el usuario.

Documentos relacionados