Descripción general de AOSP,Descripción general de AOSP

Android es un sistema operativo para una amplia gama de dispositivos con diferentes factores de forma. La documentación y el código fuente para Android están disponibles para cualquier persona como Proyecto de código abierto de Android (AOSP) . Puede utilizar AOSP para crear variantes personalizadas del sistema operativo Android para sus propios dispositivos.

AOSP está diseñado para que no haya un punto central de falla en el que un actor de la industria restrinja o controle las innovaciones de otro. Por lo tanto, AOSP es un producto para desarrolladores completo y con calidad de producción, con código fuente abierto para personalización y portabilidad.

Esta sección de documentación ayuda a los nuevos desarrolladores de AOSP a comenzar con la plataforma y a realizar tareas de desarrollo esenciales.

Términos requeridos

A continuación se muestra una lista de términos y definiciones utilizados en esta documentación de introducción. Debes estudiar cada definición antes de continuar.

desarrollador de aplicaciones para Android

Los desarrolladores de aplicaciones de Android escriben aplicaciones de Android o aplicaciones que se ejecutan en Android. Hay dos clasificaciones de desarrolladores de aplicaciones: desarrolladores de aplicaciones propios (1p) y de terceros (3p).

Desarrollador de aplicaciones Android 1p
Un desarrollador de aplicaciones de Android que tiene acceso a las API del sistema AOSP y escribe aplicaciones privilegiadas y de fabricantes de dispositivos.
Desarrollador de aplicaciones Android 3p
Un desarrollador de aplicaciones de Android que utiliza únicamente el SDK público de Android para crear aplicaciones de Android.

Si desea desarrollar aplicaciones 3p para Android, developers.android.com . La información contenida en este sitio web es únicamente para quienes trabajan directamente con AOSP.

Puente de depuración de Android (ADB)
Una herramienta de línea de comandos ( adb ) que permite que su estación de trabajo se comunique con un dispositivo virtual, emulado por software o físico.
Dispositivo compatible con Android
Un dispositivo que puede ejecutar cualquier aplicación de terceros escrita por desarrolladores externos utilizando el SDK y el NDK de Android. Los dispositivos compatibles con Android deben cumplir con los requisitos del Documento de definición de compatibilidad (CDD) y pasar el Conjunto de pruebas de compatibilidad (CTS) . Los dispositivos compatibles con Android son elegibles para participar en el ecosistema de Android, que incluye una posible licencia de Android Play Store, una posible licencia del conjunto de aplicaciones y API de Google Mobile Services (GMS) y el uso de la marca registrada Android. Cualquiera puede utilizar el código fuente de Android, pero para ser considerado parte del ecosistema de Android, un dispositivo debe ser compatible con Android. Para obtener más información sobre compatibilidad y CTS, consulte la descripción general del programa de compatibilidad de Android.
Aprobador
Miembros experimentados de la comunidad AOSP que han realizado importantes contribuciones técnicas y de diseño a la plataforma. En el proceso de revisión del código, un aprobador decide si se incluye un cambio. Los líderes de proyecto (que normalmente son empleados de Google) eligen a los aprobadores y, a veces, promueven a los verificadores a puestos de aprobador cuando demuestran experiencia en una parte específica de AOSP.
Documento de definición de compatibilidad (CDD)
Un documento que enumera los requisitos de software y hardware para un dispositivo compatible con Android.
Contribuyente

Una persona que también hace contribuciones al código fuente de AOSP. Los contribuyentes pueden ser empleados de Google, empleados de otras empresas y personas sin afiliación a ninguna empresa. Cada colaborador de AOSP utiliza las mismas herramientas, sigue el mismo proceso de revisión de código y está sujeto al mismo estilo de codificación. No es necesario ser colaborador para utilizar AOSP; puede descargar AOSP, modificarlo según sus propias necesidades e implementarlo en un dispositivo sin contribuir con código para que otros lo utilicen.

Existen límites en cuanto al tipo de contribuciones de código que acepta Google. Por ejemplo, es posible que desee contribuir con una API de aplicación alternativa, como un entorno completo basado en C++. Google rechazaría esa contribución porque Android fomenta que las aplicaciones se ejecuten en el tiempo de ejecución ART. De manera similar, Google no acepta contribuciones como bibliotecas GPL o LGPL que sean incompatibles con los objetivos de la licencia.

Si está interesado en contribuir con el código fuente, comuníquese con Google antes de comenzar a trabajar.

Conjunto de pruebas de compatibilidad (CTS)

Un conjunto de pruebas gratuito y de calidad comercial, disponible para descargar como binario o como fuente en AOSP. El CTS es un conjunto de pruebas unitarias diseñadas para integrarse en su flujo de trabajo diario. La intención de CTS es revelar incompatibilidades y garantizar que el software siga siendo compatible durante todo el proceso de desarrollo.

Calamar

Un dispositivo virtual configurable con Android que puede ejecutarse de forma remota, utilizando ofertas de nube de terceros, como Google Cloud Engine, y localmente en máquinas Linux x86.

Desarrollador

En el contexto de AOSP, un desarrollador es cualquier persona que trabaje con AOSP de cualquier manera. El término "desarrollador" se utiliza para referirse genéricamente a las distintas personas que podrían leer esta documentación, como fabricantes de equipos originales (OEM), fabricantes de teléfonos, operadores y creadores de System-on-a-Chip (SoC).

Servicios móviles de Google (GMS)

Una colección de aplicaciones y API de Google que se pueden preinstalar en los dispositivos.

Objetivo

Una permutación de un dispositivo, como un modelo o factor de forma específico. Por ejemplo, aosp_cf_x86_64_phone-userdebug representa un teléfono x86 de 65 MB con información de depuración diseñado para ejecutarse en el emulador de sepia.

Verificador

Un valioso colaborador de la comunidad de Android que descarga y verifica los cambios en AOSP. Una vez que haya enviado una cantidad significativa de código de alta calidad a AOSP, los líderes del proyecto podrían invitarlo a convertirse en verificador.

Filosofía de gobernanza

Un grupo de empresas conocido como Open Handset Alliance (OHA), liderado por Google, creó Android. Hoy en día, muchas empresas (tanto miembros originales de la OHA como otras) han invertido mucho en Android. Estas empresas han destinado importantes recursos de ingeniería para mejorar Android y llevar dispositivos Android al mercado.

Las empresas que han invertido en Android lo han hecho porque creen que es necesaria una plataforma abierta. Android es intencional y explícitamente un esfuerzo de código abierto (a diferencia del software libre); un grupo de organizaciones con necesidades compartidas ha reunido recursos para colaborar en una implementación única de un producto compartido. En primer lugar, la filosofía de Android es pragmática. El objetivo es un producto compartido que cada colaborador pueda adaptar y personalizar.

Por supuesto, la personalización incontrolada puede dar lugar a implementaciones incompatibles. Para evitar incompatibilidad, el Proyecto de código abierto de Android (AOSP) mantiene el programa de compatibilidad de Android , que explica lo que significa ser compatible con Android y qué se requiere de los fabricantes de dispositivos para lograr ese estado. Cualquiera puede utilizar el código fuente de Android para cualquier propósito y Google da la bienvenida a todos los usos legítimos. Sin embargo, para participar en el ecosistema compartido de aplicaciones que los miembros de la OHA están creando en torno a Android, los fabricantes de dispositivos deben participar en el programa de compatibilidad de Android.

AOSP está dirigido por Google, que mantiene y desarrolla Android. Aunque Android consta de varios subproyectos, AOSP es estrictamente gestión de proyectos. Google ve y administra Android como un producto de software único e integral, no como una distribución, especificación o colección de piezas reemplazables. La intención de Google es que los fabricantes de dispositivos transfieran Android a un dispositivo; no implementan una especificación ni seleccionan una distribución.

¿Que sigue?

,

Android es un sistema operativo para una amplia gama de dispositivos con diferentes factores de forma. La documentación y el código fuente para Android están disponibles para cualquier persona como Proyecto de código abierto de Android (AOSP) . Puede utilizar AOSP para crear variantes personalizadas del sistema operativo Android para sus propios dispositivos.

AOSP está diseñado para que no haya un punto central de falla en el que un actor de la industria restrinja o controle las innovaciones de otro. Por lo tanto, AOSP es un producto para desarrolladores completo y con calidad de producción, con código fuente abierto para personalización y portabilidad.

Esta sección de documentación ayuda a los nuevos desarrolladores de AOSP a comenzar con la plataforma y a realizar tareas de desarrollo esenciales.

Términos requeridos

A continuación se muestra una lista de términos y definiciones utilizados en esta documentación de introducción. Debes estudiar cada definición antes de continuar.

desarrollador de aplicaciones para Android

Los desarrolladores de aplicaciones de Android escriben aplicaciones de Android o aplicaciones que se ejecutan en Android. Hay dos clasificaciones de desarrolladores de aplicaciones: desarrolladores de aplicaciones propios (1p) y de terceros (3p).

Desarrollador de aplicaciones Android 1p
Un desarrollador de aplicaciones de Android que tiene acceso a las API del sistema AOSP y escribe aplicaciones privilegiadas y de fabricantes de dispositivos.
Desarrollador de aplicaciones Android 3p
Un desarrollador de aplicaciones de Android que utiliza únicamente el SDK público de Android para crear aplicaciones de Android.

Si desea desarrollar aplicaciones 3p para Android, developers.android.com . La información contenida en este sitio web es únicamente para quienes trabajan directamente con AOSP.

Puente de depuración de Android (ADB)
Una herramienta de línea de comandos ( adb ) que permite que su estación de trabajo se comunique con un dispositivo virtual, emulado por software o físico.
Dispositivo compatible con Android
Un dispositivo que puede ejecutar cualquier aplicación de terceros escrita por desarrolladores externos utilizando el SDK y el NDK de Android. Los dispositivos compatibles con Android deben cumplir con los requisitos del Documento de definición de compatibilidad (CDD) y pasar el Conjunto de pruebas de compatibilidad (CTS) . Los dispositivos compatibles con Android son elegibles para participar en el ecosistema de Android, que incluye una posible licencia de Android Play Store, una posible licencia del conjunto de aplicaciones y API de Google Mobile Services (GMS) y el uso de la marca registrada Android. Cualquiera puede utilizar el código fuente de Android, pero para ser considerado parte del ecosistema de Android, un dispositivo debe ser compatible con Android. Para obtener más información sobre compatibilidad y CTS, consulte la descripción general del programa de compatibilidad de Android.
Aprobador
Miembros experimentados de la comunidad AOSP que han realizado importantes contribuciones técnicas y de diseño a la plataforma. En el proceso de revisión del código, un aprobador decide si se incluye un cambio. Los líderes de proyecto (que normalmente son empleados de Google) eligen a los aprobadores y, a veces, promueven a los verificadores a puestos de aprobador cuando demuestran experiencia en una parte específica de AOSP.
Documento de definición de compatibilidad (CDD)
Un documento que enumera los requisitos de software y hardware para un dispositivo compatible con Android.
Contribuyente

Una persona que también hace contribuciones al código fuente de AOSP. Los contribuyentes pueden ser empleados de Google, empleados de otras empresas y personas sin afiliación a ninguna empresa. Cada colaborador de AOSP utiliza las mismas herramientas, sigue el mismo proceso de revisión de código y está sujeto al mismo estilo de codificación. No es necesario ser colaborador para utilizar AOSP; puede descargar AOSP, modificarlo según sus propias necesidades e implementarlo en un dispositivo sin contribuir con código para que otros lo utilicen.

Existen límites en cuanto al tipo de contribuciones de código que acepta Google. Por ejemplo, es posible que desee contribuir con una API de aplicación alternativa, como un entorno completo basado en C++. Google rechazaría esa contribución porque Android fomenta que las aplicaciones se ejecuten en el tiempo de ejecución ART. De manera similar, Google no acepta contribuciones como bibliotecas GPL o LGPL que sean incompatibles con los objetivos de la licencia.

Si está interesado en contribuir con el código fuente, comuníquese con Google antes de comenzar a trabajar.

Conjunto de pruebas de compatibilidad (CTS)

Un conjunto de pruebas gratuito de calidad comercial, disponible para descargar como binario o como fuente en AOSP. El CTS es un conjunto de pruebas unitarias diseñadas para integrarse en su flujo de trabajo diario. La intención de CTS es revelar incompatibilidades y garantizar que el software siga siendo compatible durante todo el proceso de desarrollo.

Calamar

Un dispositivo virtual configurable con Android que puede ejecutarse de forma remota, utilizando ofertas de nube de terceros, como Google Cloud Engine, y localmente en máquinas Linux x86.

Desarrollador

En el contexto de AOSP, un desarrollador es cualquier persona que trabaje con AOSP de cualquier manera. El término "desarrollador" se utiliza para referirse genéricamente a las distintas personas que podrían leer esta documentación, como fabricantes de equipos originales (OEM), fabricantes de teléfonos, operadores y creadores de System-on-a-Chip (SoC).

Servicios móviles de Google (GMS)

Una colección de aplicaciones y API de Google que se pueden preinstalar en los dispositivos.

Objetivo

Una permutación de un dispositivo, como un modelo o factor de forma específico. Por ejemplo, aosp_cf_x86_64_phone-userdebug representa un teléfono x86 de 65 MB con información de depuración diseñado para ejecutarse en el emulador de sepia.

Verificador

Un valioso colaborador de la comunidad de Android que descarga y verifica los cambios en AOSP. Una vez que haya enviado una cantidad significativa de código de alta calidad a AOSP, los líderes del proyecto podrían invitarlo a convertirse en verificador.

Filosofía de gobernanza

Un grupo de empresas conocido como Open Handset Alliance (OHA), liderado por Google, creó Android. Hoy en día, muchas empresas (tanto miembros originales de la OHA como otras) han invertido mucho en Android. Estas empresas han destinado importantes recursos de ingeniería para mejorar Android y llevar dispositivos Android al mercado.

Las empresas que han invertido en Android lo han hecho porque creen que es necesaria una plataforma abierta. Android es intencional y explícitamente un esfuerzo de código abierto (a diferencia del software libre); un grupo de organizaciones con necesidades compartidas ha reunido recursos para colaborar en una implementación única de un producto compartido. En primer lugar, la filosofía de Android es pragmática. El objetivo es un producto compartido que cada colaborador pueda adaptar y personalizar.

Por supuesto, la personalización incontrolada puede dar lugar a implementaciones incompatibles. Para evitar incompatibilidad, el Proyecto de código abierto de Android (AOSP) mantiene el programa de compatibilidad de Android , que explica lo que significa ser compatible con Android y qué se requiere de los fabricantes de dispositivos para lograr ese estado. Cualquiera puede utilizar el código fuente de Android para cualquier propósito y Google da la bienvenida a todos los usos legítimos. Sin embargo, para participar en el ecosistema compartido de aplicaciones que los miembros de la OHA están creando en torno a Android, los fabricantes de dispositivos deben participar en el programa de compatibilidad de Android.

AOSP está dirigido por Google, que mantiene y desarrolla Android. Aunque Android consta de varios subproyectos, AOSP es estrictamente gestión de proyectos. Google ve y administra Android como un producto de software único e integral, no como una distribución, especificación o colección de piezas reemplazables. La intención de Google es que los fabricantes de dispositivos transfieran Android a un dispositivo; no implementan una especificación ni seleccionan una distribución.

¿Que sigue?