Introducción Desarrollo de aplicaciones móviles (ANDROID con Kotlin).

Publicado el 01 mayo 2022 por Cristian David Henao Hoyos @chenaooo

Como primer paso para empezar el proceso de aprender sobre desarrollo de aplicaciones móviles, es importante conocer una serie de generalidades sobre que son y lás caracteristicas del sistema operativo, así que veamos...



Dispositivos Móviles.

La telefonía móvil ha tenido un crecimiento enorme y con el avance de las nuevas tecnologías los teléfonos pasaron de ser dispositivos de comunicación mediante solo llamadas, a convertirse en un mini computador de bolsillo lo que ha permitido que a la par nazcan un sin fin de aplicaciones y herramientas que suplen las necesidades de los usuarios. 

Una aplicación móvil es un software construido de forma similar a como se construye un sistema web o un software de escritorio pero igual que ellos, estas aplicaciones tienen unas características propias, enfoques, tipos y particularidades que hacen que su uso sea cada vez más requerido.

Existen aplicaciones móviles para lo que se pueda imaginar, desde apps de ocio, productividad, sociales, informativas entre otras, algunas de forma independiente y otras como apoyo para facilitar procesos ya existentes.

¿Porqué Android?

Existen muchas plataformas para móviles (iOS, Symbian, Windows Phone, BlackBerry, Palm, Java Mobile Edition, Linux Mobile (LiMo), Firefox OS, etc.); sin embargo Android presenta una serie de características que lo hacen diferente.

Características Android

  • Uno de los SO más populares y usados en la actualidad
  • Adaptable a cualquier tipo de hardware.
  • Portabilidad.
  • Arquitectura basada en componentes.
  • Dispositivos con acceso a internet.
  • Servicios incorporados.
  • Seguridad.
  • Optimización, memoria y potencia.
  • Gráficos y Sonido optimizados.
  • Plataforma abierta.
  • Facilidad en la construcción de Apps bajo este sistema operativo

Origen Android.

  • Desarrollado por Android Inc desde 2003. Hasta que fue comprado por Google en 2005.
  • Se liberó el código bajo licencia Apache al crearse la Open Handset Alliance el 5 de Noviembre de 2007. También considerado el cumpleaños de Android.
  • En 2008 se crean los primero chips compatibles y se lanza el primer teléfono Android, el HTC Dream.
  • Se empiezan a nombrar como dulces a las versiones de Android.

Versiones Android

En android se manejan 3 formas de denominar las versiones:

  • Versión Comercial
  • Versión Fabricantes
  • Versión Desarrollo


 Arquitectura de Android

Linux Kernel

Esta capa es la base de la plataforma, en ella se definen procesos para la administración de memoria de bajo nivel, proporciona servicios de seguridad, multiprocesos, soporte de drivers para dispositivos, esta capa es la única dependiente del hardware.


Hardware Abstraction Layer (HAL)

Esta capa brinda interfaces que exponen las capacidades de hardware de los dispositivos para la interacción con la API de java, brinda diferentes módulos que implementan interfaces para el uso de componentes de hardware, por ejemplo para el uso de cámara, GPS, bluetooth etc.

 

Android Runtime

Está basado en el concepto de máquina virtual usado en java, y brinda todo el entorno de ejecución necesario para probar las aplicaciones, inicialmente antes de android 5 (API 21) se usaba el entorno de ejecución Dalvik pero para versiones iguales o superiores se reemplaza por ART que optimiza este proceso permitiendo ejecutar varias máquinas virtuales en dispositivos de baja memoria, mejorando también la compatibilidad con la depuración y optimización de recursos.

Adicional vincula nuevas mejoras en cuanto a compatibilidad y acceso a librerías java.


Librerías Nativas C/C++

Muchos de los componentes centrales de Android se basan código nativo que requiere librerías escritas en C y C++, esta capa nos permite precisamente acceder a componentes nativos dependiendo de nuestras necesidades, por ejemplo para el trabajo con librerías 2D, 3D, WebKit, SSL entre otros.

Para desarrollo nativo con C o C++ se debe usar el NKD de Android (Native Development Kit).

  


Framework API Java

El conjunto de funciones del Sistema operativo está disponible mediante API’s desarrolladas en JAVA, esta capa brinda el soporte para la creación de actividades, content providers, manejo del ciclo de vida, componentes gráficos, elementos de localización entre otras funcionalidades, esto es independiente del lenguaje con el que se decida desarrollar, sea java o kotlin, los cuales requieren del SDK.


System Apps

Esta capa está formada por el conjunto de aplicaciones instaladas por defecto en una máquina Android, brinda apps para la gestión de calendario, acceso a internet, mensajería, correo electrónico, contactos entre otros.

Estas apps brindan una alternativa para los usuarios, permitiendo que no sea necesaria la instalación de otras aplicaciones externas, sin embargo no lo impide. 



Y listo, espero que este vídeo y esta entrada te hayan gustado, en las próximas entradas seguiremos profundizando en este sistema operativo!!!!

También te podría Interesar.

 
¿Hay algo que quieras anexar o comentar sobre esta entrada?  no dudes en hacerlo.....y si te gustó...... te invito a compartir y Suscribirte ingresando al botón "Participar en este sitio" para darte cuenta de mas entradas como esta ;)