Android Modulo01 002
Android Modulo01 002
Móvil I
Presentación 02
INTRODUCCION A ANDROID Y SU
ENTORNO
Temas
⬢ Introducción a las plataformas para telefonía celular
⬢ Arquitectura de Android
⬢ Versiones de Android, Support Librarys
⬢ Creación de dispositivos virtuales
⬢ Creación del programa Android y su ejecución
⬢ Componentes de las Aplicaciones,
⬢ Depuración con LogCat
2
OBJETIVOS
⬢ Conocer las características de Android, destacando los aspectos que lo hacen
diferente de sus competidores.
⬢ Estudiar la arquitectura interna de Android.
⬢ Aprender a instalar y trabajar con el entorno de desarrollo (Android Studio).
⬢ Enumerar las principales versiones de Android y aprender a elegir la más idónea
para desarrollar nuestras aplicaciones.
⬢ Crear una primera aplicación y
estudiar su estructura de un proyecto en Android.
⬢ Conocer donde podemos conseguir documentación
sobre Android.
⬢ Aprender a utilizar las herramientas disponibles
para detectar errores en el código.
3
Introducción a las plataformas celulares
⬢ El crecimiento tecnológico ha generado nuevas necesidades en las empresas, tanto en los
requerimientos del talento humano, como en las estrategias de ventas e implementación de
herramientas para la interacción con los consumidores. Una de estas nuevas necesidades que
ha surgido es la creación de aplicaciones para celulares que brinda una comunicación más
rápida, directa y efectiva con los clientes, razón por la que contar con una de estas en
cualquier empresa genera múltiples beneficios.
⬢ Si bien un teléfono móvil ya es una extensión de nosotros mismos tanto así que se puede
decir que esto nos hace seres aumentados. Sin embargo al día de hoy un Smartphone es más
que un montón de circuitos integrados cargado con aplicaciones que nos hace la vida mejor.
⬢ Es el medio por el cual nos relacionamos, interactuamos y visualizamos una nueva realidad
que está creciendo a un ritmo exorbitante. Tanto que ni la imaginación nos basta para
comprenderlo
4
Introducción a las plataformas celulares
5
Arquitectura de Android
6
Arquitectura de Android
⬢ Kernel de Linux
⬢ El núcleo del sistema operativo Android es un kernel Linux versión 2.6, similar al que puede
incluir cualquier distribución de Linux, como Ubuntu, solo que adaptado a las características
del hardware en el que se ejecutará Android (normalmente, un smartphone).
⬢ Proporciona una capa de abstracción para los elementos hardware a los que tienen que
acceder las aplicaciones. Esto permite que se pueda acceder a esos componentes sin
necesidad de conocer el modelo o características precisas de los que están instalados en cada
teléfono. De esta forma, si una aplicación necesita, por ejemplo, la brújula, podrá utilizar la
que incluya el teléfono, sea cual sea. Para cada elemento hardware del teléfono existe un
controlador (o driver) dentro del kernel que permite utilizarlo desde el software.
9
Arquitectura de Android
⬢ SSL (Secure Sockets Layer): proporciona seguridad al acceder a Internet por medio de
criptografía.
⬢ FreeType: permite mostrar fuentes tipográficas, tanto basadas en mapas de bits como
vectoriales.
⬢ SQLite: motor de bases de datos relacionales, disponible para todas las aplicaciones.
⬢ Biblioteca C de sistema (libc): está basada en la implementación de Berkeley Software
Distribution (BSD), pero optimizada para sistemas Linux embebidos. Proporciona
funcionalidad básica para la ejecución de las aplicaciones.
10
Arquitectura de Android
⬢ Administrador de actividades (Activity Manager): se encarga de controlar el ciclo de vida
de las actividades y la propia pila de actividades. Sin entrar en muchos detalles ahora,
las actividades se pueden definir como las ventanas que se muestran, una sobre otra, en la
pantalla del dispositivo Android (usando un concepto de ventana similar al de los sistemas
operativos gráficos de PC, aunque el funcionamiento en Android sea muy diferente).
11
Arquitectura de Android
⬢ Proveedor de contenidos (Content Provider): permite encapsular un conjunto de datos que
va a ser compartido entre aplicaciones creando una capa de abstracción que hace accesible
dichos datos sin perder el control sobre cómo se accede a la información. Por ejemplo, uno
de los proveedores de contenido existentes permite a las aplicaciones acceder a los contactos
almacenados en el teléfono. Esta biblioteca nos permite crear también nuestros propios
proveedores para permitir que otras aplicaciones accedan a información que gestiona la
nuestra.
12
Entorno de Desarrollo (IDE)
13
Entorno de Desarrollo (IDE)
14
Entorno de desarrollo
17
Estructura de un proyecto Android
.
⬢ ApplicationTest: Clase Java pensada para insertar código de testeo de
la aplicación utilizando el API JUnit.
⬢ res: Carpeta que contiene los recursos usados por la aplicación.
⬢ drawable: En esta carpeta se almacenan los ficheros de imágenes
(JPG o PNG) y descriptores de imágenes en XML.
⬢ mipmap: Es una carpeta con la misma finalidad que res/drawable. La
única diferencia es que si ponemos los gráficos en mipmap, estos no
son rescaldados para adaptarlos a la densidad gráfica del dispositivo
donde se ejecuta la aplicacióncargue al cumplirse una determinada
condición. similar en la pantalla. Véase la referencia sobre recursos
alternativos de la unidad 3 para más detalles
18
Estructura de un proyecto Android
⬢ layout: Contiene archivos XML con vistas de la aplicación. Las vistas
nos permitirán configurar las diferentes pantallas que compondrán la
interfaz de usuario de la aplicación. Se utiliza un formato similar al
HTML usado para diseñar páginas web. Se tratarán en el siguiente
capítulo.
⬢ menu: Archivos XML con los menús de cada actividad. En el
proyecto no hay ningún menú por lo que no se muestra esta carpeta.
⬢ values: También utilizaremos ficheros XML para indicar valores
usados en la aplicación, de esta manera podremos cambiarlos desde
estos ficheros sin necesidad de ir al código fuente. En colors.xml se
definen los tres colores primarios de la aplicación. En dimens.xml, se
ha definido el margen horizontal y vertical por defecto.
19
Estructura de un proyecto Android
⬢ layout: Contiene archivos XML con vistas de la aplicación. Las vistas
nos permitirán configurar las diferentes pantallas que compondrán la
interfaz de usuario de la aplicación. Se utiliza un formato similar al
HTML usado para diseñar páginas web. Se tratarán en el siguiente
capítulo.
⬢ menu: Archivos XML con los menús de cada actividad. En el
proyecto no hay ningún menú por lo que no se muestra esta carpeta.
⬢ values: También utilizaremos ficheros XML para indicar valores
usados en la aplicación, de esta manera podremos cambiarlos desde
estos ficheros sin necesidad de ir al código fuente. En colors.xml se
definen los tres colores primarios de la aplicación. En dimens.xml, se
ha definido el margen horizontal y vertical por defecto.
20
Estructura de un proyecto Android
⬢ anim: Contiene ficheros XML con animaciones de vistas (Tween).
21
Primer Proyecto Android
22
Primer Proyecto Android
23
Gracias por su atención
M-002 Ing. Ricardo Lagos
“
Tu trabajo va a llenar gran parte de tu vida, la única manera de
estar realmente satisfecho es hacer lo que creas que es un gran
trabajo y la única manera de hacerlo es amar lo que haces. Si no
lo has encontrado aún, sigue buscando. Como con todo lo que
tiene que ver con el corazón, lo sabrás cuando lo hayas
encontrado.
Steve Jobs.
25