Está en la página 1de 47

Aplicaciones Mobile Native

Temario

• Logro
• Acerca de Android
• Workflow
• Software Stack
• Arquitectura de App
Logro

Al finalizar la sesión, el estudiante


construye experiencias móviles
nativas de nivel inicial.
TEMA # 1

Acerca de Android
Android

Android es un sistema operativo movil (mobile OS)


creado por Android, Inc. y desarrollado actualmente por
Google.
Android

Está basado en el Linux kernel y fue diseñado


principalmente para dispositivos móviles con
touchscreens como smartphones y tablets.
Versiones
Ediciones

Se ha desarrollado Android para televisiones, autos,


relojes y bandas. Existen además variantes de Android
para notebooks, cámaras digitales, drones y otros
dispositivos electrónicos.
Android TV
Android TV

Smart TV platform de Google.


Anunciada en Junio 2014 con Android 5.0 Lollipop.
Sucesor de Google TV.
Android Auto
Android Auto
Estándar que permite operar un dispositivo móvil desde
la unidad integrada al panel del auto.
Anunciada en Junio 2014 con Android 5.0 Lollipop.
Lanzada en Marzo 2015.

Soporta control de:


Mapas/Navegación con GPS
Reproducción de música
SMS
Telefonía
Búsqueda web
Interfaces Touchscreen, Botones, Comandos de voz.
Android Wear
Android Wear
Versión de Android diseñada para smartwatches y otros
wearables.
Soporta pairing con mobile phones que tengan Android
version 4.3+.
Integra tecnologías como Google Now, mobile
notifications.
TEMA # 2

Workflow
Developer Workflow
Developer Workflow
Setup
Android Studio
Android SDK
Android Virtual Devices (AVD)
Developer Workflow
Development

Android Manifest
Android Modules
Java classes & packages
Resource files
Gradle
Developer Workflow
Debugging & Testing

Inline Debugging
Memory and CPU Monitor
Android Debug Monitor
Developer Workflow
Herramientas adicionales

Emulación Screen Mirroring

Prototyping
TEMA # 3

Software Stack
Android Software Stack

Applications

Application Framework

Android Runtime Libraries

Linux kernel
Android Software Stack

Applications

Application Framework

Android Runtime Libraries

Linux kernel
Android Software Stack

Applications
Binder (IPC)
Audio drivers Camera driver Display driver
driver

Application Framework
Power
Flash memory Keypad driver WiFi driver
management
Android Runtime Libraries

Linux kernel
Android Software Stack

Applications

Application Framework

Android Runtime Libraries

Linux kernel
Android Software Stack

Applications

Application Framework

Core Libraries

Android Runtime Libraries


Dalvik Virtual
Machine
Linux kernel
Android Software Stack

Applications

Application Framework

Android Runtime Libraries

Linux kernel
Android Software Stack

Media
FreeType libc Applications
LibWebCore
framework

OpenGL SGL
Application Framework
SQLite SSL

Android Runtime Libraries

Linux kernel
Android Software Stack

Applications

Application Framework

Android Runtime Libraries

Linux kernel
Android Software Stack

Applications

Application Framework

Location Notification
Activity manager
Android Runtime
Content provider Libraries
manager manager

Package Telephony Resource Window


Linux kernel
manager manager manager manager
Android Software Stack

Applications

Application Framework

Android Runtime Libraries

Linux kernel
Android Software Stack

Applications

Home Browser
Application Framework
Contacts Phone

Android Runtime Libraries

Linux kernel
Android Software Stack
TEMA # 4

Arquitectura de App
Arquitectura de App

Activities User Interface

Widgets Display management & User interactivity

Services Background jobs performing

Broadcast
System messages reactors
receivers
Activity

Componente de aplicación.
Pantalla de interacción con un propósito.
Aplicación compuesta de uno o más activities enlazadas.
Activity
Fragment

Comportamiento ó parte de UI en Activity.


Se puede combinar múltiples fragments en un activity.
Se puede reutilizar un fragment en múltiples activities.
Sección modular de un activity.
Fragment
Fragment
Intent

Componente de aplicación.
Pantalla de interacción con un propósito.
Aplicación compuesta de uno o más activities enlazadas.
Intent

Explicit Intent (Clase)


Implicit Intent (Acción a realizar)
Intent

Ciclo de vida
Conclusiones

1 Android

2 Versiones 5 Workflow 7 Software Stack 9 Arquitectura de App

3 Ediciones 6 Setup 8 Kernel 10


Activities
Development Runtime
Debugging & Testing Widgets
Libraries
Publishing Application Framework
Services
Applications Broadcast receivers

Android
4
Android TV
Android Auto
Android Wear
Bibliografía

• android developers -
http://developer.android.com/index.html

• android sdk - http://developer.android.com/sdk/index.html


• android studio - http://tools.android.com/download/studio/
Material producido por la Universidad Peruana de Ciencias Aplicadas
Autor: Ángel Augusto Velásquez Núñez
COPYRIGHT ©UPC 2016 - Todos los derechos reservados.