UNIDAD 2 INTRODUCCIÓN A ANDROID Flashcards
Pregunta: ¿En qué sistema operativo se basa Android?
Respuesta: En Linux.
Pregunta: ¿Qué significa que Android sea un sistema multiusuario?
Respuesta: Cada aplicación tiene su propio identificador de usuario y sistema de seguridad, lo que le otorga acceso exclusivo a sus archivos y permisos.
Pregunta: ¿Qué principio sigue Android para conceder permisos a las aplicaciones?
Respuesta: El principio de menor privilegio, que otorga solo los permisos necesarios para el funcionamiento de la aplicación.
Pregunta: ¿Cuándo se conceden los permisos a una aplicación en Android?
Respuesta: Durante la instalación de la aplicación o al momento de su uso, y es el usuario quien decide concederlos.
Pregunta: ¿En qué lenguaje de programación se desarrollan las aplicaciones Android?
Respuesta: En Java.
Pregunta: ¿Qué herramienta compila el código, datos y recursos en un archivo APK en Android?
Respuesta: El SDK de Android.
Pregunta: ¿Qué es un archivo APK?
Respuesta: Es el formato en el que las aplicaciones Android se empaquetan para su instalación en dispositivos.
Pregunta: ¿Qué es un Activity en Android?
Respuesta: Es el componente principal que gestiona la mayoría de las interacciones con el usuario, mostrando una pantalla con una interfaz de usuario independiente.
Pregunta: ¿Cuál es la función principal de un Service en Android?
Respuesta: Ejecutar tareas en segundo plano, sin necesidad de una interfaz de usuario, y realizar operaciones prolongadas o remotas.
Pregunta: ¿Qué es un Content Provider en Android?
Respuesta: Es el componente encargado de gestionar el conjunto de datos de una aplicación, permitiendo que otras aplicaciones accedan a esos datos si el proveedor lo permite.
Pregunta: ¿Qué hace un Broadcast Receiver en una aplicación Android?
Respuesta: Responde a eventos o anuncios del sistema, actuando como un enlace para otros componentes que realizarán acciones.
Pregunta: ¿Qué es un Intent en Android?
Respuesta: Es un elemento esencial que permite movernos entre distintas Activities o activar otros componentes de la aplicación.
Pregunta: ¿Cuál es la principal función del archivo Android Manifest?
Respuesta: Informar al sistema Android sobre los componentes de la aplicación y los permisos y requisitos necesarios para su funcionamiento.
Pregunta: ¿Qué componentes deben ser declarados en el Android Manifest?
Respuesta: Components como Activities, Services, Content Providers y Broadcast Receivers.
Pregunta: ¿Qué tipo de permisos pueden declararse en el Android Manifest?
Respuesta: Permisos como acceso a Internet, contactos, cámara, ubicación, entre otros.
Pregunta: ¿Qué función tiene el atributo uses-sdk en el Android Manifest?
Respuesta: Indicar las versiones mínimas del SDK que la aplicación requiere para funcionar.
Pregunta: ¿Qué información básica de la aplicación se incluye en el Android Manifest?
Respuesta: Nombre, ícono, tema y los intents que permiten la interacción entre los componentes.
Pregunta: ¿Por qué es importante declarar los permisos en el Android Manifest?
Respuesta: Porque son necesarios para que la aplicación pueda acceder a recursos restringidos como Internet, ubicación o datos del usuario.
Pregunta: ¿Qué define la etiqueta Manifest en el Android Manifest?
Respuesta: Incluye todas las etiquetas y define el espacio de nombres y las propiedades generales de la aplicación.
Pregunta: ¿Qué información se incluye en la etiqueta Application?
Respuesta: Metadatos como el nombre de la app, ícono, tema, actividades, servicios, Broadcast Receivers, y Content Providers.
Pregunta: ¿Qué es Uses-SDK y por qué es importante?
Respuesta: Define las versiones mínimas y máximas del SDK necesarias para ejecutar la aplicación, incluyendo el nivel mínimo de API.
Pregunta: ¿Qué tipo de permisos puede declarar una aplicación en Uses-Permission?
Respuesta: Permisos como acceso a Internet, lectura y escritura de contactos, localización (GPS o red telefónica), envío de SMS, uso de Bluetooth, entre otros.
Pregunta: ¿Qué función tiene la etiqueta Permission en el Manifest?
Respuesta: Crea permisos que otras aplicaciones necesitan para acceder a partes restringidas de la app.
Pregunta: ¿Qué permite definir la etiqueta Instrumentation en el Manifest?
Respuesta: Permite definir pruebas de ejecución para las Activities y Services de la aplicación.
Pregunta: ¿Qué tipo de recursos se almacenan en la carpeta res/drawable?
Respuesta: Recursos gráficos como imágenes, archivos bitmap, y formas escalables en XML.
Pregunta: ¿Qué se guarda en la carpeta res/layout?
Respuesta: Los archivos que definen la disposición de los elementos gráficos en la interfaz de la aplicación.
Pregunta: ¿Qué tipo de recursos se encuentran en la carpeta res/animator?
Respuesta: Animaciones simples que alteran propiedades visuales como el movimiento o transparencia.
Pregunta: ¿Para qué sirve la carpeta res/mipmap?
Respuesta: Para almacenar diferentes versiones del ícono de la aplicación optimizadas para distintas densidades de pantalla.
Pregunta: ¿Qué tipo de recursos se guardan en la carpeta res/values?
Respuesta: Archivos XML con valores como cadenas de texto, colores, dimensiones, y otros recursos utilizados por la app.
Pregunta: ¿Qué tipo de archivos se almacenan en res/raw?
Respuesta: Archivos en bruto (raw), como audios o vídeos, que no necesitan ser procesados por la aplicación.
Pregunta: ¿Qué contiene la carpeta res/xml en una aplicación Android?
Respuesta: Configuraciones específicas de la app, como las preferencias del usuario.
Pregunta: ¿Cómo se accede a un color definido en los recursos desde un archivo XML?
Respuesta: Usando android:background=”@color/colorPrimario” en el archivo XML.
Pregunta: ¿Qué clase en Java se usa para acceder a los recursos de una aplicación Android?
Respuesta: La clase R se usa para acceder a los recursos.
Pregunta: ¿Cómo se obtiene un color desde el código Java en Android?
Respuesta: Usando getResources().getColor(R.color.colorPrimario);.
Pregunta: ¿Cómo se asigna una imagen a un ImageView desde el código Java?
Respuesta: Usando imagePreviewView.setImageResource(R.drawable.imagen);.
Pregunta: ¿Qué ventajas ofrece el acceso a recursos a través de XML en comparación con Java?
Respuesta: Facilita la modificación de los recursos sin necesidad de cambiar el código fuente.
Pregunta: ¿Cómo se accede a un color del sistema Android (como el color rojo) desde Java?
Respuesta: Usando getResources().getColor(android.R.color.red);.
Pregunta: ¿Qué es la clase R en Android?
Respuesta: Es una clase especial que contiene las variables estáticas que identifican a los recursos de la aplicación, como imágenes, textos, colores, etc.
Pregunta: ¿Qué función cumple la clase R en una aplicación Android?
Respuesta: Asocia cada recurso con una dirección de memoria, permitiendo que el código Java acceda a los recursos mediante identificadores únicos.
Pregunta: ¿Cómo se accede a un recurso como un texto desde la clase R?
Respuesta: Se accede mediante un identificador generado automáticamente, como R.string.texto.
Pregunta: ¿Qué puede causar errores relacionados con la clase R en Android Studio?
Respuesta: Errores en los archivos XML, como enlaces rotos o recursos que no existen.
Pregunta: ¿Cómo se pueden solucionar los errores de la clase R en Android Studio?
Respuesta: Usando las herramientas Build/Clean Project o Build/Rebuild Project para limpiar y reconstruir el proyecto.
Pregunta: ¿Por qué no se debe modificar manualmente la clase R en Android?
Respuesta: Porque esta clase es generada automáticamente por la herramienta AAPT y cualquier cambio manual se perderá al recompilar el proyecto.
Pregunta: ¿Qué herramienta es el entorno de desarrollo oficial para crear aplicaciones Android?
Respuesta: Android Studio.
Pregunta: ¿En qué año se lanzó Android Studio como entorno de desarrollo oficial para Android?
Respuesta: En 2013.
Pregunta: ¿Qué IDE utiliza Android Studio como base?
Respuesta: IntelliJ IDEA de JetBrains.
Pregunta: ¿Qué tecnología es recomendable para mejorar el rendimiento de los emuladores de Android en Android Studio?
Respuesta: La tecnología Intel HAXM.
Pregunta: ¿Cuánta memoria RAM se recomienda para usar Android Studio y el emulador de Android de manera fluida?
Respuesta: Se recomiendan al menos 8 GB de RAM.
Pregunta: ¿Qué es AVD en Android Studio?
Respuesta: Android Virtual Device (AVD) es un emulador que simula dispositivos Android para probar aplicaciones.
Pregunta: ¿Qué se debe instalar además de Android Studio para poder desarrollar aplicaciones Android?
Respuesta: Se deben instalar el Java Development Kit (JDK) y el SDK de Android.
Pregunta: ¿Qué tipo de actividad es recomendable seleccionar al iniciar un nuevo proyecto en Android Studio?
Respuesta: Es recomendable empezar con Empty Activity o No Activity si se quiere comenzar con un proyecto vacío.
Pregunta: ¿Qué es el dominio y por qué es importante al crear un proyecto en Android Studio?
Respuesta: El dominio es un identificador único que se usa para empaquetar la app. Comienza con prefijos como com. o es. y asegura que la aplicación sea única en la Play Store.
Pregunta: ¿Qué lenguajes de programación se pueden elegir al crear un proyecto en Android Studio?
Respuesta: Se puede elegir entre Java y Kotlin.
Pregunta: ¿Qué herramienta ofrece Android Studio para elegir el nivel de API mínimo y cuál es su función?
Respuesta: Android Studio ofrece la opción “Help me choose” para seleccionar el nivel de API mínimo de forma informada, mostrando la distribución de versiones de Android entre los usuarios.
Pregunta: ¿Qué es Instant App Support y cuál es su ventaja?
Respuesta: Es una opción que permite que la app esté disponible como una Instant App, lo que permite a los usuarios probarla sin descargarla completamente, mejorando la experiencia y reduciendo tiempos de espera.
Pregunta: ¿Por qué es importante seleccionar correctamente el nivel de API mínimo para un proyecto Android?
Respuesta: Porque determina en qué dispositivos será compatible la app, y seleccionar un nivel de API demasiado bajo o alto puede afectar el número de usuarios que podrán instalar la app.
Pregunta: ¿Dónde se encuentra organizado el contenido de un proyecto Android en Android Studio?
Respuesta: En el Panel de Proyecto, a la izquierda de la interfaz de Android Studio.
Pregunta: ¿Qué archivos importantes se encuentran en el panel de proyecto en un proyecto Android?
Respuesta: Archivos como AndroidManifest.xml, carpetas res/, clases Java o Kotlin, y los scripts de Gradle.
Pregunta: ¿Qué es Gradle y cuál es su función en un proyecto Android?
Respuesta: Gradle es el sistema de construcción que compila el proyecto, maneja las dependencias y genera el APK final.
Pregunta: ¿Qué es ADB (Android Debug Bridge) y para qué sirve?
Respuesta: ADB es una herramienta que permite que Android Studio se comunique con un dispositivo Android conectado para ejecutar y probar aplicaciones.
Pregunta: ¿Qué debes activar en tu dispositivo Android para poder usarlo como dispositivo de pruebas en Android Studio?
Respuesta: Debes activar las opciones de desarrollador y habilitar la depuración USB.
Pregunta: ¿Qué es un Android Virtual Device (AVD)?
Respuesta: Es un emulador que simula un dispositivo Android y permite probar la aplicación sin usar un dispositivo físico.
Pregunta: ¿Qué parámetros puedes personalizar en un emulador de Android?
Respuesta: Tamaño de pantalla, cantidad de memoria, versión del sistema operativo, y otros aspectos del hardware y software del dispositivo.
Pregunta: ¿Dónde se declaran los permisos que una aplicación necesita en Android?
Respuesta: En el archivo AndroidManifest.xml.
Pregunta: ¿Qué sistema de permisos introdujo Android 6.0 (Marshmallow)?
Respuesta: Introdujo un sistema de permisos en tiempo de ejecución, donde los usuarios pueden conceder o denegar permisos durante el uso de la app, y no solo al instalarla.
Pregunta: ¿Cómo se verifica en el código Java si un permiso ha sido concedido?
Respuesta: Usando el método ContextCompat.checkSelfPermission().
Pregunta: ¿Cómo se solicita un permiso en tiempo de ejecución en Android?
Respuesta: Utilizando el método ActivityCompat.requestPermissions().
Pregunta: ¿Cómo se manejan los resultados de los permisos solicitados en tiempo de ejecución?
Respuesta: A través del método onRequestPermissionsResult().
Pregunta: ¿Qué sucede si un usuario rechaza un permiso crítico para la funcionalidad de la app?
Respuesta: Si el usuario rechaza el permiso, la app no podrá acceder al recurso solicitado, lo que puede limitar su funcionalidad.