Guia3 Basico
Guia3 Basico
Guia3 Basico
En esta sesión conocerás qué son los archivos apk, los componentes básicos de una
aplicación y el Android Manifest.
¿Qué necesitas?
Para el desarrollo de la sesión debes contar con:
1. La computadora
Aprendiendo
Existen una serie de elementos clave que resultan imprescindibles para desarrollar
aplicaciones en Android. En este apartado vamos a realizar una descripción inicial de
algunos de los más importantes. A lo largo de la guía se describirán con más detalle las
clases Java que implementan cada uno de estos componentes.
1
Vista (View)
Las vistas son los elementos que componen la interfaz de usuario de una aplicación. Son
por ejemplo, un botón o una entrada de texto. Todas las vistas van a ser objetos
descendientes de la clase View, y por tanto, pueden ser definidos utilizando código
Kotlin. Sin embargo, lo habitual va a ser definir las vistas utilizando un fichero XML y
dejar que el sistema cree los objetos por nosotros a partir de este fichero. Esta forma
de trabajar es muy similar a la definición de una página web utilizando código HTML.
Layout
Un Layout es un conjunto de vistas agrupadas de una determinada forma. Vamos a
disponer de diferentes tipos de Layouts para organizar las vistas de forma lineal, en
cuadrícula o indicando la posición absoluta de cada vista. Los Layouts también son objetos
descendientes de la clase View. Igual que las vistas los Layouts pueden ser definidos en
código, aunque la forma habitual de definirlos en utilizando código XML.
Actividad (Activity)
Una aplicación en Android está formada por un conjunto de elementos básicos de
visualización, coloquialmente conocidos como pantallas de la aplicación. En Android cada
uno de estos elementos, o pantallas, se conoce como actividad. Su función principal es la
creación del interfaz de usuario. Una aplicación suele necesitar varias actividades para
crear el interfaz de usuario. Las diferentes actividades creadas serán independientes
entre sí, aunque todas trabajarán para un objetivo común. Toda actividad ha de
pertenecer a una clase descendiente de Activity.
Servicio (Service)
Un servicio es un proceso que se ejecuta “detrás”, sin la necesidad de una interacción
con el usuario.
Intención (Intent)
Una intención representa la voluntad de realizar alguna acción como realizar una llamada
de teléfono o visualizar una página web.
2
3.3. Android Manifest
Todos los proyectos de apps deben tener un archivo AndroidManifest.xml (con ese mismo
nombre) en la raíz de la fuente del proyecto. El archivo de manifiesto describe
información esencial de tu aplicación para las herramientas de creación de Android.
• Los permisos que necesita la aplicación para acceder a las partes protegidas del
sistema o a otras aplicaciones. También, declara cualquier permiso que otras
aplicaciones deben tener si quieren acceder al contenido de esta aplicación.
Las aplicaciones de Android deben solicitar permiso para acceder a datos del usuario
confidenciales (como contactos y SMS) o a determinadas funciones del sistema (como la
cámara y el acceso a Internet). Cada permiso se identifica con una etiqueta única. Por
ejemplo, en el manifiesto de una app que necesite enviar mensajes SMS debe incluirse
esta línea:
3
A partir de Android 6.0 (nivel de API 23), el usuario puede aprobar o rechazar algunos
permisos durante el tiempo de ejecución. No obstante, sin importar qué versión de
Android admita tu aplicación, debes declarar todas las solicitudes de permisos con un
elemento <uses-permission> en el manifiesto. Si se otorga el permiso, la aplicación puede
usar las funciones protegidas. De lo contrario, los intentos de acceder a esas funciones
fallarán.
Actividad 1
Ejecutar de nuevo la aplicación “hello world” y encontrar el archivo .apk
4. Los recursos
Los recursos son los archivos adicionales y el contenido estático que usa tu código, como
mapas de bits, definiciones de diseño, strings de interfaz de usuario, instrucciones de
animación, etc.
Siempre debes externalizar los recursos para aplicaciones, como imágenes y strings de
tu código, para que puedas mantenerlos de forma independiente. También, debes
proporcionar recursos alternativos para configuraciones de dispositivos específicos,
agrupándolos en directorios de recursos con un nombre especial. En tiempo de ejecución,
Android utiliza el recurso adecuado según la configuración actual. Por ejemplo, puedes
proporcionar un diseño de interfaz de usuario (IU) diferente según el tamaño de la
pantalla o strings diferentes según la configuración de idioma.
MyProject/
src/
MyActivity.kt
res/
drawable/
graphic.png
layout/
main.xml
4
info.xml
mipmap/
icon.png
values/
strings.xml
Identificador de un view— Existe un atributo que heredan todos los elementos llamados
id. Este representa un identificador único para cada elemento, lo que permite obtener
una referencia de cada objeto de forma específica. La sintaxis para el id sería la
siguiente:
android:id="@+id/nombre_identificador"
Donde el símbolo '@' indica al parser interno de XML, que comienza un nuevo
identificador para traducir, y el símbolo '+' declara que dicho id no existe aún. Por ello,
se da la orden para crear el identificador dentro del archivo R.java a partir del string
que proporcionamos.
5
4.3. Creación de recursos
Elemento de diseño
A fin de crear un alias para un elemento de diseño existente, usa el elemento <drawable>. Por
ejemplo:
La carpeta de fuentes contiene los archivos de fuentes personalizados que desee utilizar.
Actualmente, Android admite archivos de fuentes ttf, otf, ttc y xml. Para crear una carpeta de
fuentes en su proyecto:
1. Haga clic derecho en la carpeta res
2. Elija nuevo
3. Elija Android Resource Directory
4. Nombra la fuente del directorio
5. Haga clic en Aceptar
Consulte los recursos de fuentes en sus archivos XML llamando a:
"@font/ nombre de archivo"
Actividad 2
Cree una carpeta para archivos de video en Raw.