Glosario de la plataforma de Android

Consulta la lista que se encuentra más abajo para conocer la terminología básica del Proyecto de código abierto de Android (AOSP). A continuación, se incluyen otras fuentes para las definiciones de términos clave:

Consulta Codificación respetuosa para ver algunos ejemplos de términos que se deben usar o evitar con el objetivo de lograr un ecosistema más inclusivo.

Apps

Archivo .apk
Archivo de paquete de aplicación para Android. Cada aplicación de Android se compila y empaqueta en un solo archivo que incluye todo el código (archivos .dex) de la aplicación, los recursos, elementos y el archivo de manifiesto. El archivo del paquete de la aplicación puede tener cualquier nombre, pero debe usar la extensión .apk. Por ejemplo:myExampleAppname.apk. Por motivos prácticos, a menudo los archivos de paquetes de aplicación se denominan ".apk".

Términos relacionados: aplicación

Acción
Descripción de una tarea que un remitente de intent quiere que se realice. Una acción es un valor de cadena asignado a un intent. Android o un desarrollador externo pueden definir cadenas de acción. Por ejemplo, android.intent.action.VIEW para una URL web, o com.example.rumbler.SHAKE_PHONE para una aplicación personalizada que hace vibrar el teléfono.

Términos relacionados: intent

Actividad
Una única pantalla en una aplicación, con código Java compatible, derivada de la clase Activity. Por lo general, una actividad se representa de forma visible mediante una ventana de pantalla completa que puede recibir y controlar eventos de la IU y realizar tareas complejas gracias a la ventana que usa para renderizar su propia ventana. Aunque las actividades suelen ser de pantalla completa, también pueden ser flotantes o transparentes.
Aplicación
Desde la perspectiva de un componente, una aplicación de Android consta de una o más actividades, servicios, objetos de escucha y receptores de intents. Desde la perspectiva del archivo fuente, una aplicación de Android consta de código, recursos, activos y un único manifiesto. Durante la compilación, estos archivos se empaquetan en un único archivo denominado archivo de paquete de la aplicación (.apk).

Términos relacionados: .apk, actividad

Receptor de emisión
Clase de aplicación que escucha los intents que se emiten, en lugar de enviarlos a una única aplicación/actividad de destino. El sistema entrega un intent de emisión a todos los receptores de emisión interesados que controlan el intent de forma secuencial.

Términos relacionados: intent, filtro de intents

Proveedor de contenido
Capa de abstracción de datos que puedes usar para exponer de manera segura los datos de tu aplicación a otras aplicaciones. Un proveedor de contenido se basa en la clase ContentProvider, que controla las cadenas de consulta de contenido de un formato específico para mostrar datos en un formato determinado. Consulta el tema Proveedores de contenido para obtener más información.

Términos relacionados: uso de URI en Android

Diálogo
Ventana flotante que actúa como un formulario liviano. Un diálogo puede tener solo controles de botones y está destinado a realizar una acción simple (como la elección del botón) y tal vez mostrar un valor. Un diálogo no persiste en la pila del historial, no contiene un diseño complejo ni realiza acciones complejas. Android proporciona un diálogo simple predeterminado con botones opcionales, aunque puedes definir tu propio diseño de diálogo. La clase de base para los diálogos es Dialog.

Términos relacionados: actividad

Intent
Objeto de mensaje que puedes usar para iniciar otras aplicaciones o actividades, o bien comunicarte con ellas de manera asíncrona. Un objeto de intent es una instancia de Intent. Incluye varios campos de criterios que puedes proporcionar para determinar qué aplicación o actividad recibe el intent y qué hace el receptor cuando controla el intent. Los criterios disponibles incluyen la acción deseada, una categoría, una cadena de datos, el tipo de MIME de los datos, una clase de control y otros. Una aplicación envía un intent al sistema Android, en lugar de enviarlo directamente a otra aplicación o actividad. La aplicación puede enviar el intent a una sola aplicación de destino o puede enviarlo como una transmisión, que a su vez puede ser controlada por varias aplicaciones de forma secuencial. El sistema Android es responsable de resolver el mejor receptor disponible para cada intent según los criterios proporcionados en el intent y los filtros de intent definidos por otras aplicaciones. Para obtener más información, consulta Intents y filtros de intents.

Términos relacionados: filtro de intents, receptor de emisión

Filtro de intents
Objeto de filtro que una aplicación declara en su archivo de manifiesto para indicarle al sistema qué tipos de intents está dispuesto a aceptar cada uno de sus componentes y con qué criterios. A través de un filtro de intents, una aplicación puede expresar interés en tipos de datos específicos, acciones de intents, formatos de URI, etc. Cuando se resuelve un intent, el sistema evalúa todos los filtros de intents disponibles en todas las aplicaciones y pasa el intent a la aplicación o actividad que mejor coincida con el intent y los criterios. Para obtener más información, consulta Intents y filtros de intents.

Términos relacionados: intent , receptor de emisión

Recursos
Componentes de aplicación no programáticos que son externos al código de aplicación compilado, pero que se pueden cargar desde el código de aplicación utilizando un formato de referencia conocido. Android admite una variedad de tipos de recursos, pero los recursos de una aplicación típica consisten en cadenas de IU, componentes de diseño de la IU, gráficos y otros archivos multimedia, etc. Una aplicación utiliza recursos para admitir de manera eficaz la localización y diversos perfiles y estados de dispositivos. Por ejemplo, una aplicación incluiría un conjunto separado de recursos para cada tipo local o de dispositivo admitido, y puede incluir recursos de diseño específicos de la orientación de pantalla actual (horizontal o vertical). Para obtener más información acerca de los recursos, consulta Recursos y elementos. Los recursos de una aplicación siempre se almacenan en las subcarpetas res/* del proyecto.
Servicio
Objeto de la clase Service que se ejecuta en segundo plano (sin presencia de una IU) para realizar varias acciones persistentes, como reproducir música o supervisar la actividad de la red.

Términos relacionados: actividad

URI en Android
Android utiliza cadenas de URI (identificador uniforme de recursos) como base para solicitar datos en un proveedor de contenido (como para recuperar una lista de contactos) y para solicitar acciones en un intent (por ejemplo, abrir una página web en un navegador). El esquema y el formato de URI se especializan según el tipo de uso, y una aplicación puede controlar esquemas y cadenas de URI específicos como desee. Algunos esquemas de URI están reservados por los componentes del sistema. Por ejemplo, las solicitudes de datos de un proveedor de contenido deben usar content://. En un intent, el navegador controlará un URI que use un esquema http://.

Compilación

adb
Android Debug Bridge, una aplicación de depuración de línea de comandos incluida con el SDK. Proporciona herramientas a fin de explorar el dispositivo, copiar herramientas en el dispositivo y desviar puertos para depuración. Si estás desarrollando en Android Studio, adb está integrado en el entorno de desarrollo. Consulta Android Debug Bridge para obtener más información.
Proyecto de Android
Un repositorio de Git en un host de Gerrit de Android. Consulta Herramientas de control de código fuente > Gerrit para obtener más información.
Huella digital de compilación
Una cadena única y legible por humanos que contiene la información del fabricante que se emitió para cada compilación. Consulta Cómo interpretar las huellas digitales de compilación para obtener más información.
Rama de Git: canónica
Diferentes versiones de cada repositorio de Git, como android-11.0.0_r1, que se encuentran en cs.android.com/android/platform/superproject/+/android-11.0.0_r1. Consulta Git Branching - Branches in a Nutshell para obtener más información.
Rama de Git: local
Rama temporal en el cliente de Repo actual para realizar cambios en el código. Se inicia con el comando repo start branch-name ., que es una línea de desarrollo activa. La confirmación más reciente se denomina la punta de la rama.
Repositorio de Git
Parte de la base de código que, a veces, se conoce como proyecto y que representa un componente o un tipo de dispositivo en particular, como frameworks/base o platform/packages/apps/Car/Media.
Archivo de manifiesto
Archivo en formato XML que describe una agrupación de repositorios de Git por rama, las revisiones de Git que se usan para obtener esos repositorios y su diseño en un sistema de archivos. Ese archivo en formato XML, generalmente llamado default.xml, está asociado a una rama de Repo y describe los repositorios de Git y las ramas de Git revisadas cuando inicializas y sincronizas la rama de Repo. Este archivo define los distintos repositorios de Git que debe usar la herramienta Repo para recuperar el resultado de un cliente de Repo y compilar un producto (por ejemplo, el SO Android Automotive). Consulta todos los manifiestos en android.googlesource.com/platform/manifest/+refs. Consulta el manifiesto predeterminado que se incluye en los archivos AndroidManifest para extraer archivos de la plataforma de Android (AOSP) en android.googlesource.com/platform/manifest/+/refs/heads/main/default.xml. Consulta el archivo AndroidManifest.xml para obtener información sobre la app y el formato de manifiesto del repositorio para el desarrollo de la plataforma.
Actualización inalámbrica
Los dispositivos Android en el campo pueden recibir e instalar actualizaciones inalámbricas del sistema, el software de aplicaciones y las reglas de zona horaria. Consulta Actualizaciones OTA para obtener más información.
Rama de Repo
Colección de repositorios de Git capturada en un archivo AndroidManifest que representa una versión (compilación) de la base de código de Android, como android11-gsi o aosp-android-games-sdk. Se descarga mediante los comandos repo init y repo sync. Consulta la descripción del archivo de manifiesto para obtener vínculos a todos los archivos de manifiesto y usa https://cs.android.com/ para buscar las compilaciones.
uprev
En general, uprev actualiza un subproyecto constituyente de un proyecto más grande a una versión más reciente. Un uprev cambia un nivel de revisión a la siguiente versión incrementada o a la última versión disponible. En el caso de un paquete HIDL, para mantener el nivel del paquete de retrocompatibilidad con extensibilidad, un uprev de versión secundaria actualiza el paquete nuevo a una versión secundaria superior y, al mismo tiempo, mantiene el mismo nombre y versión principal que el paquete anterior. En el caso de la configuración del bootloader, un uprev actualiza la compatibilidad de la versión del encabezado de inicio a la última versión.

Plataforma

Android Runtime (ART) y Dalvik
Android Runtime (ART) es el entorno de ejecución administrado que usan las aplicaciones y algunos servicios del sistema en Android. Además, es el entorno de ejecución predeterminado para dispositivos con Android 5.0 (nivel de API 21) y versiones posteriores. ART y su predecesor, Dalvik, se crearon originalmente para el proyecto de código abierto de Android. ART como entorno de ejecución ejecuta el formato Dalvik Executable y la especificación de código de bytes Dex. ART y Dalvik son entornos de ejecución compatibles que ejecutan el código de bytes Dex, por lo que las apps desarrolladas para Dalvik deberían funcionar cuando se ejecuten con ART.
Línea de código
Una línea de código contiene el lanzamiento de un producto de software. Se compone de una o más ramas de uno o más repositorios, los cuales suelen estar en desarrollo activo a la vez. La línea de código es el punto de agregación y el destino de la versión. Para obtener más información sobre las líneas de código, consulta Administración del software de Android.
Archivo .dex
Archivo de código de aplicación de Android compilado.

Los programas de Android se compilan en archivos .dex (Dalvik ejecutables), que a su vez se comprimen en un solo archivo .apk en el dispositivo. Los archivos .dex se pueden crear traduciendo automáticamente las aplicaciones compiladas escritas en el lenguaje de programación Java.