Red de conocimiento del abogados - Preguntas y respuestas penales - ¿Qué es el desarrollo del marco de Android?

¿Qué es el desarrollo del marco de Android?

El marco de desarrollo de aplicaciones de Android es el marco de aplicación. Su arquitectura del sistema consta de 5 partes, a saber: kernel de Linux, tiempo de ejecución de Android, bibliotecas, marco de aplicación y aplicaciones. La segunda parte presentará estas 5 partes en detalle. Analicemos cada capa de abajo hacia arriba. Arquitectura de Android 1. Kernel de LinuxAndroid proporciona servicios centrales del sistema basados ​​en Linux 2.6, como: seguridad, administración de memoria, administración de procesos, pila de red y modelo de controlador. El kernel de Linux también sirve como una capa de abstracción entre hardware y software. Oculta detalles específicos del hardware y proporciona servicios unificados a la capa superior. Si ha estudiado redes de computadoras y conoce OSI/RM, sabrá que la ventaja de la estratificación es utilizar los servicios proporcionados por la capa inferior para brindar servicios unificados a la capa superior, protegiendo las diferencias entre esta capa y las capas inferiores. Cuando esta capa y las capas inferiores cambien, no afectará a los niveles superiores. En otras palabras, cada capa realiza sus propias funciones y cada capa proporciona un SAP (punto de acceso al servicio) fijo. Se puede decir que el punto profesional es de alta cohesión y bajo acoplamiento. Si solo está desarrollando aplicaciones, no necesita comprender en profundidad la capa del kernel de Linux. 2. Android Runtime Android contiene una colección de bibliotecas principales que proporcionan la mayoría de las funciones disponibles en las bibliotecas de clases principales del lenguaje de programación Java. Cada aplicación de Android es una instancia de la máquina virtual Dalvik y se ejecuta en su propio proceso. La máquina virtual Dalvik está diseñada para ejecutar de manera eficiente múltiples máquinas virtuales en un solo dispositivo. El formato del archivo ejecutable de la máquina virtual Dalvik es .dex. El formato dex es un formato de compresión especialmente diseñado para Dalvik y es adecuado para sistemas con memoria y velocidad de procesador limitadas. La mayoría de las máquinas virtuales, incluida JVM, se basan en pilas, mientras que la máquina virtual Dalvik se basa en registros. Ambas arquitecturas tienen sus ventajas y desventajas. En términos generales, las máquinas basadas en pilas requieren más instrucciones, mientras que las máquinas basadas en registros requieren instrucciones más grandes. dx es un conjunto de herramientas que pueden convertir Java .class al formato .dex. Un archivo dex suele tener varias clases. Dado que a veces es necesario optimizar dex, el tamaño del archivo aumentará de 1 a 4 veces y terminará con ODEX. La máquina virtual Dalvik se basa en el kernel de Linux para proporcionar funciones básicas como subprocesos y administración de memoria de bajo nivel. 3. BibliotecasAndroid contiene una colección de bibliotecas C/C++ para uso de varios componentes del sistema Android. Estas funciones están expuestas a los desarrolladores a través del marco de la aplicación de Android. Algunas de las bibliotecas principales se enumeran a continuación: Biblioteca System C: derivada BSD de la biblioteca estándar del sistema C (libc), adaptada para dispositivos integrados basados ​​en Linux Biblioteca multimedia: OpenCORE basada en PacketVideo. Estas bibliotecas admiten la reproducción y grabación de muchos formatos populares de audio y video, así como archivos de imágenes fijas, incluidos MPEG4, H.264, MP3, AAC, AMR, JPG, PNG Administración de interfaz: administre el acceso a los subsistemas de visualización y combine sin problemas múltiples Capa de gráficos 2D y 3D de la aplicación LibWebCore: un nuevo motor de navegador web que impulsa el navegador Android y vistas web integradas. SGL: una biblioteca 3D de motor de gráficos 2D básico, basada en la implementación de las API OpenGL ES 1.0. La biblioteca utiliza aceleración 3D por hardware o contiene software 3D ráster altamente optimizado FreeType: representación de mapas de bits y fuentes vectoriales SQLite: un motor de base de datos relacional potente y liviano que puede ser utilizado por todas las aplicaciones 4. Application Framework proporciona desarrollo abierto por plataforma, Android permite a los desarrolladores programar aplicaciones extremadamente ricas e innovadoras. Los desarrolladores son libres de aprovechar el hardware del dispositivo, acceder a información de ubicación, ejecutar servicios en segundo plano, configurar alarmas, agregar notificaciones a la barra de estado y mucho más. Los desarrolladores tienen acceso completo a las API del marco utilizadas por las aplicaciones principales. La arquitectura de la aplicación está diseñada para simplificar la reutilización de componentes; cualquier aplicación puede publicar su funcionalidad y cualquier otra aplicación puede usar esa funcionalidad (sujeta a las restricciones de seguridad impuestas por el marco). Este mecanismo permite a los usuarios reemplazar componentes. Todas las aplicaciones son en realidad un conjunto de servicios y sistemas, que incluyen: Vista: una colección rica y extensible de vistas que se pueden utilizar para crear una aplicación.

Incluyendo listas, cuadrículas, cuadros de texto, botones e incluso proveedores de contenido integrados en el navegador web (proveedores de contenido), que permiten a las aplicaciones acceder a datos de otras aplicaciones (como contactos) o * compartir su propio administrador de recursos de datos (Administrador de recursos): proporciona acceso. a recursos sin código, como cadenas localizadas, gráficos y archivos de diseño Administrador de notificaciones (Administrador de notificaciones): permite que todas las aplicaciones muestren alertas personalizadas en la barra de estado Administrador de actividades (Administrador de actividades): administra el ciclo de vida de la aplicación y proporciona una función de respaldo de navegación universal 5. AplicacionesAndroid reúne una colección de aplicaciones principales, incluidos clientes de correo electrónico, programas de SMS, calendarios, mapas, navegadores, contactos y otras configuraciones. Todas las aplicaciones están escritas en el lenguaje de programación Java. ¡Aplicaciones más ricas nos esperan para desarrollarlas! De lo anterior sabemos que la arquitectura de Android tiene capas, es muy clara y la división del trabajo es clara. Android en sí es una pila de software (Software Stack), o "arquitectura de pila de software". La pila se divide principalmente en tres capas: sistema operativo, middleware y aplicación. De lo anterior, también hemos visto el poder del código abierto. Cada software de código abierto familiar ha aportado su propia fuerza aquí.