martes, 30 de agosto de 2011

Conociendo Android


  
                    El aparato móvil que ha formado parte desde no hace mucho en nuestra existencia, ha pasado sin dudas a formar parte de nuestro vivir cotidiano, hoy en día nadie está sujeto a poder convivir sin estar comunicado con los demás y más aun en esta sociedad juvenil paraguaya tornada alta mente consumista, que casi siempre escoge caminos propagandísticos para incurrir y pensar que lo que más se les ofrece a la vista es lo que está a la moda o tendencia actual.
        Pero bueno empecemos entonces a conocer  que es Android. No es más que un nombre dado al Sistema Operativo pensado originalmente para teléfonos móviles inteligentes, es términos de equivalencias  los que más suena al oído es el “Blackberry, Nokia, Iphone”,  si son modelos de teléfonos, pero que cuentan con Sistemas Operativos  adaptados para el funcionamiento de sus respectivos recursos (Hardware), al que no le damos importancia y por tal motivo muchos desconocen.  Estos son algunos de ellos, el Blackberry Os, Symbian Os, iOs, Windows Phone, etc.

         Lo más extraordinario estaba por comenzar.

        Fue desarrollado inicialmente por Android Inc., una firma comprada por el poderoso Google en el año 2005. Pasaron dos años para el anuncio oficial del lanzamiento del Sistema Operativo Android  que se realizo el 5 de noviembre de 2007, y lo más extraordinario e impensado se dio a conocer, “La plataforma creada lo realizaron en el kernel de Linux”, y aun hay más, “Google liberó la mayoría del código de Android bajo la licencia Apache, que bien sabemos es libre y de código abierto.” Fue entonces que apareció la versión 1.0. ¿y dónde está el teléfono?.  Pudiera parecer Utópico pero aconteció lo siguiente se ha lanzado primero el sistema operativo  antes que el primer móvil, acompañado del  SDK(Software Development Kit) para que los programadores empezaran a crear sus aplicaciones para la evolución del sistema Operativo.
  


       Características y Especificaciones
       Diseño de      dispositivo
            La plataforma es adaptable a pantallas más grandes, VGA, biblioteca de gráficos 2D, biblioteca de gráficos 3D basada en las especificaciones de la OpenGL ES 2.0 y diseño de teléfonos tradicionales.
             Almacenamiento
             SQLite, una base de datos liviana, la cual es usada para propósitos de almacenamiento de datos.
           Conectividad
            Android soporta las siguientes tecnologías de conectividad: GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, LTE y WiMAX.
         Mensajería
            SMS y MMS son formas de mensajería, incluyendo mensajería de texto y ahora la Android Cloud to Device Messaging Framework (C2DM) es parte del servicio de Push Messaging de Android.
           Navegador web
             El navegador web incluido en Android está basado en el motor de renderizado de código abierto WebKit, emparejado con el motor JavaScript V8 de Google Chrome. El navegador obtiene una puntuación de 93/100 en el test Acid3.
          Soporte de Java
            Aunque las aplicaciones son escritas en Java, no hay una Máquina Virtual de Java en la plataforma. El código Java no es ejecutado. El código Java se compila en el ejecutable Dalvik y corre en la Máquina Virtual Dalvik. Dalvik es una máquina virtual especializada diseñada específicamente para Android y optimizada para dipositivos móviles que funcionan con batería y que tienen memoria y procesador limitados. El soporte para J2ME puede ser agregado mediante aplicaciones de terceros como el J2ME MIDP Runner.
            Soporte multimedia
            Android soporta los siguientes formatos 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
            Streaming RTP/RTSP (3GPP PSS, ISMA), descarga progresiva de HTML (HTML5 <video> tag). Adobe Flash Streaming (RTMP) es soportado mediante el Adobe Flash Player. Se planea el soporte de Microsoft Smooth Streaming con el port de Silverlight a Android. Adobe Flash HTTP Dynamic Streaming estará disponible mediante una actualización de Adobe Flash Player.
            Soporte para hardware adicional
            Android soporta cámaras de fotos, de vídeo, pantallas táctiles, GPS, acelerómetros, giroscopios,  magnetómetros, sensores de proximidad y de presión, termómetro, aceleración 2D y 3D.
          Entorno de desarrollo
            Incluye un emulador de dispositivos, herramientas para depuración de memoria y análisis del rendimiento del software. El entorno de desarrollo integrado es Eclipse (actualmente 3.4 o 3.5) usando el plugin de Herramientas de Desarrollo de Android.
        Market 
            El Android Market es un catálogo de aplicaciones gratuitas o de pago en el que pueden ser descargadas e instaladas en dispositivos Android sin la necesidad de un PC.
         Multi-táctil
        Android tiene soporte nativo para pantallas multi-táctiles que inicialmente hicieron su aparición en dispositivos como el HTC Hero. La funcionalidad fue originalmente desactivada a nivel de kernel (posiblemente para evitar infringir patentes de otras compañías). Más tarde, Google publicó una actualización para el Nexus One y el Motorola Droid que activa el soporte para pantallas multi-táctiles de forma nativa.
         Bluetooth
            El soporte para A2DF y AVRCP fue agregado en la versión 1.5; el envío de archivos (OPP) y la exploración del directorio telefónico fueron agregados en la versión 2.0; y el marcado por voz junto con el envío de contactos entre teléfonos lo fueron en la versión 2.2.
          Videollamada
             Android soporta videollamada através de Google Talk desde su versión HoneyComb.
      Multitarea
            Multitarea real de aplicaciones está disponible, es decir, las aplicaciones que no estén ejecutándose en primer plano reciben ciclos de reloj, a diferencia de otros sistemas de la competencia en la que la multitarea es congelada
           Características basadas en voz
            La búsqueda en Google a través de voz está disponible como "Entrada de Búsqueda" desde la versión inicial del sistema.
      Tethering
       Android soporta tethering, el cual permite al teléfono ser usado como un punto de acceso alámbrico o inalámbrico (todos los teléfonos desde la versión 2.2, no oficial en teléfonos con versión 1.6 o superiores mediante aplicaciones disponibles en el Android Market, por ejemplo PdaNet). Para permitir a un PC usar la conexión 3G del móvil android se podría requerir la instalación de software adicional.



     De la parte de estandarizaciones se ha encargado la Open Handset Alliance, un   conglomerado de fabricantes y desarrolladores de hardware, software y operadores de servicios estándares y abiertos para dispositivos móviles.


      Historial de actualizaciones         



1.0            Liberado el 23 de septiembre de 2008
1.1            Liberado el 9 de febrero de 2009
          1.5 (Cupcake)
            Basado en el kernel de Linux 2.6.27
            El 30 de abril de 2009, la actualización 1.5 (Cupcake) para Android fue liberada. Hubo varias características nuevas y actualizaciones en la interfaz de usuario en la actualización 1.5
  •            Posibilidad de grabar y reproducir videos a través del modo camcorder
  •            Capacidad de subir videos a YouTube e imágenes a Picasa directamente desde el teléfono
  •            Un nuevo teclado con predicción de texto
  •            Soporte para Bluetooth A2DP y AVRCP
  •            Capacidad de conexión automática para conectar a auricular Bluetooth a cierta distancia
  •            Nuevos widgets y carpetas que se pueden colocar en las pantallas de inicio
  •            Transiciones de pantalla animadas
              1.6 (Donut)
            Basado en el kernel de Linux 2.6.29
            El 15 de septiembre de 2009, el SDK 1.6 (Donut) fue liberado. Se incluyó en esta actualización
  •            Una experiencia mejorada en el Android Market
  •            Una interfaz integrada de cámara, filmadora y galería
  •            La galería ahora permite a los usuarios seleccionar varias fotos para eliminarlas
  •            Búsqueda por voz actualizada, con respuesta más rápida y mayor integración con aplicaciones nativas, incluyendo la posibilidad de marcar a contactos
  •            Experiencia de búsqueda mejorada que permite buscar marcadores, historiales, contactos y páginas web desde la pantalla de inicio.
  •            Actualización de soporte para CDMA/EVDO, 802.1x, VPN y text-to-speech
  •            Soporte para resoluciones de pantalla WVGA
  •            Mejoras de velocidad en las aplicaciones de búsqueda y cámara
  •            Framework de gestos y herramienta de desarrollo GestureBuilder
  •            Navegación gratuita turn-by-turn de Google
               2.0 / 2.1 (Eclair)
           Basado en el kernel de Linux 2.6.29
             El 26 de octubre de 2009, el SDK 2.0 (Eclair) fue liberado. Los cambios incluyeron
  •            Velocidad de hardware optimizada
  •            Soporte para más tamaños de pantalla y resoluciones
  •            Interfaz de usuario renovada
  •            Nuevo interfaz de usuario en el navegador y soporte para HTML5
  •            Nuevas listas de contactos
  •            Una mejor relación de contraste para los fondos
  •            Mejoras en Google Maps 3.1.2
  •            Soporte para Microsoft Exchange
  •            Soporte integrado de flash para la cámara
  •            Zoom digital
  •            MotionEvent mejorado para captura de eventos multi-touch
  •            Teclado virtual mejorado
  •            Bluetooth 2.1
  •            Fondos de pantalla animados
                   El SDK 2.0.1 fue liberado el 3 de diciembre de 2009.
                   El SDK 2.1 fue liberado el 12 de enero de 2010.
            2.2 (Froyo)
Basado en el kernel de Linux 2.6.32
            El 20 de mayo de 2010, el SDK 2.2 (Froyo) fue liberado.  Los cambios incluyeron
  •            Optimización general del sistema Android, la memoria y el rendimiento
  •            Mejoras en la velocidad de las aplicaciones, gracias a la implementación de JIT
  •            Integración del motor JavaScript V8 del Google Chrome en la aplicación Browser
  •            Soporte mejorado de Microsoft Exchange (reglas de seguridad, reconocimiento automático, GAL look-up, sincronización de calendario, limpieza remota)
  •             Lanzador de aplicaciones mejorado con accesos directos a las aplicaciones de teléfono y Browser
  •            Funcionalidad de Wi-Fi hotspot y tethering por USB
  •            Permite desactivar el tráfico de datos a través de la red del operador
  •            Actualización del Market con actualizaciones automáticas
  •            Cambio rápido entre múltiples idiomas de teclado y sus diccionarios
  •            Marcación por voz y compartir contactos por Bluetooth
  •            Soporte para contraseñas numéricas y alfanuméricas
  •            Soporte para campos de carga de archivos en la aplicación Browser
  •            Soporte para la instalación de aplicación en la memoria expandible
  •            Soporte para Adobe Flash 10.1
  •            Soporte para pantallas de alto número de Puntos por pulgada, tales como 4" 720p
           2.3 (Gingerbread)
Basado en el kernel de Linux 2.6.35.7 Actual en smat
            El 6 de diciembre de 2010, el SDK 2.3 (Gingerbread) fue liberado. Los cambios incluyeron
  •            Actualización del diseño de la interfaz de usuario
  •            Soporte para pantallas extra grandes y resoluciones WXGA y mayores
  •            Soporte nativo para telefonía VoIP SIP
  •            Soporte para reproducción de videos WebM/VP8 y decodificación de audio AAC
  •            Nuevos efectos de audio como reverberación, ecualización, virtualización de los auriculares y refuerzo de graves
  •            Soporte para Near Field Communication
  •            Funcionalidades de cortar, copiar y pegar disponibles a lo largo del sistema
  •            Teclado multi-táctil rediseñado
  •            Soporte mejorado para desarrollo de código nativo
  •            Mejoras en la entrada de datos, audio y gráficos para desarrolladores de juegos
  •            Recolección de elementos concurrentes para un mayor rendimiento
  •            Soporte nativo para más sensores (como giroscopios y barómetros)
  •            Un administrador de descargas para descargar archivos grandes
  •            Administración de la energía mejorada y control de aplicaciones mediante la administrador de tareas
  •            Soporte nativo para múltiples cámaras
  •            Cambio de sistema de archivos de YAFFS a ext4
           3.0 / 3.1 / 3.2 (Honeycomb)
  •            Mejor soporte para tablets
  •            Escritorio 3D con widgets rediseñados
  •            Sistema multitarea mejorado
  •            Mejoras en el navegador web predeterminado, entre lo que destaca la navegación por pestañas, autorelleno de formularios, sincronización de favoritos con Google Chrome y navegación privada
  •            Soporte para videochat mediante Google Talk
  •            Mejor soporte para redes Wi-Fi
  •            Añade soporte para una gran variedad de periféricos y accesorios con conexión USB: teclados, ratones,hubs, dispositivos de juego y cámaras digitales. Cuando un accesorio está conectado, el sistema busca la aplicación necesaria y ofrece su ejecución.
  •            Los widgets pueden redimensionarse de forma manual sin la limitación del número de cuadros que tenga cada escritorio.
  •            Se añade soporte opcional para redimensionar correctamente las aplicaciones inicialmente creadas para móvil para que se vean bien en Tablets
            (Ice Cream Sandwich)
(Número de versión desconocido)
  •            Interfaz estilo Honeycomb, en cualquier dispositivo, homogeneidad entre teléfonos, televisiones, tablets, netbooks
  •            Barra de estado redimensionable
  •            Reconocimiento de voz del usuario
  •            Reconocimiento facial, lo que haría que puedas cambiar la vista
  •            Un único y nuevo framework para las aplicaciones

                                 Imágenes Utilizadas



                  La Arquitectura Android
             Los componentes principales del sistema operativo de Android 
 §  Aplicaciones: las aplicaciones base incluyen un cliente de correo electrónico, programa de SMS, calendario, mapas, navegador, contactos y otros. Todas las aplicaciones están escritas en lenguaje de programación Java.
 §  Marco de trabajo de aplicaciones: los desarrolladores tienen acceso completo a los mismos APIs del framework usados por las aplicaciones base. La arquitectura está diseñada para simplificar la reutilización 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). Este mismo mecanismo permite que los componentes sean reemplazados por el usuario.
 § Bibliotecas: Android incluye un conjunto de bibliotecas de C/C++ usadas por varios componentes del sistema. Estas características se exponen a los desarrolladores a través del marco de trabajo de aplicaciones de Android; algunas son: System C library (implementación biblioteca C estándar), bibliotecas de medios, bibliotecas de gráficos, 3D y SQLite, entre otras.
 §  Runtime de Android: Android incluye un set de bibliotecas base que proporcionan la mayor parte de las funciones disponibles en las bibliotecas base del lenguaje 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 Linux para los servicios base del sistema como seguridad, gestión de memoria, gestión de procesos, pila de red y modelo de controladores. El núcleo también actúa como una capa de abstracción entre el hardware y el resto de la pila de software.





No hay comentarios: