Post on 12-Jun-2015
description
1. Introducción a Android 2. Entorno de desarrollo 3. Plataforma Google Play
Resumen
1. Introducción a AndroidConceptos de sistema y hardware
H A L
¿Qué es Android?
HAL: 3 capas
+ +
Hardware Android Launcher
Capa 1: Hardware
PROCESADOR
MEMORIA RAM
MEMORIA INTERNA
TIPO PANTALLA
Capa 1: Hardware
MARCA
CÁMARA
BATERÍA
PROCESADOR
MEMORIA RAM
MEMORIA INTERNA
TIPO PANTALLA
Capa 1: Hardware
Dispositivos
Dispositivos: Parrot Asteroid
Dispositivos: OUYA
Dispositivos: Sony TV
Dispositivos: Recon Instruments
Dispositivos: Samsung Galaxy Camera
16M
Domótica
Capa 2: Software (Android)
Capa 2: Software (Android)
2.3
4.0
4.1
Capa 2: Software (Android)
2.3
4.0
4.1
SISTEMA
Capa 3
BARRA INFERIOR
ICONOS
BARRA DE NOTIFICACIONES
Capa 3: Launcher
WIDGETS
CONTROL DE ENERGÍA
Capa 3: Launcher
Go Launcher EXGO LAUNCHER DEV TEAM
Capa 3: Launcher
HTC SenseHTC
Capa 3: Launcher
TouchWizSamsung
Capa 3: Launcher
Regina 3DNemus
Capa 3: Launcher
Launcher 7Timo Kujala
Capa 3: Launcher
LauncherAndroid Oficial (Vanilla)
¿Por qué Android?
BlackBerry iPhone Windows Phone Android
PRODUCTO
EMPRESAS
Ventas a nivel mundial
Fuente: Gartner & IDChttp://en.wikipedia.org/wiki/Mobile_operating_system
Diversidad
Diversidad
MIN1GBRAM
Diversidad
MIN1GHz CPU
Diversidad
MINANDROID
4 (ICS)
Proceso de preparación de actualización
ACTUALIZACIÓN DE ANDROID
Proceso de preparación de actualización
ACTUALIZACIÓN DE ANDROID
ADAPTACIÓNDEL FABRICANTE
Proceso de preparación de actualización
ACTUALIZACIÓN DE ANDROID
ADAPTACIÓNDEL FABRICANTE
ADAPTACIÓNDE LA OPERADORA
Proceso de preparación de actualización
ACTUALIZACIÓN DE ANDROID
ADAPTACIÓNDEL FABRICANTE
ADAPTACIÓNDE LA OPERADORA
CLIENTEDESESPERADO
Acuerdo de lanzamiento de actualizaciones
18 MESES
RootObtener permisos de administrador
Control total: Droidwall Cambiar ROM Actualizaciones Overclock Eliminar apps
Hardware
Procesador
Procesador
Quadrant Standard Ed.Aurora Softworks
Procesador
Procesador
Procesador
Memoria y almacenamiento
Memoria y almacenamiento
Particionado
Arquitectura
Arquitectura
Arquitectura
Arquitectura
Arquitectura
Liberación de memoria
MEM 30%
MODELO ERRÓNEO
TASK-KILLER
CACHÉ
Liberación de memoria
MODELO CORRECTO
MEM 90% AUTOMÁTICO
Seguridad
Malware
Malware en AndroidKaspersky
Malware
Malware en AndroidSophos
Permisos
Otras formas
Evitar Markets alternativos
Fragmentación
Versiones de Android
Android 1.5Cupcake
Teclado predictivo Soporte Bluetooth Widgets y carpetas Transiciones animadas
Android 1.6Donut
Android Market mejorado Búsqueda por voz mejorada Soporte para VPN y TTS Soporte para resoluciones WVGA
Android 2.1Eclair
Interfaz de usuario renovada Soporte para HTML5 Cámara mejorada: flash y zoom Teclado virtual mejorado
Android 2.2Froyo
Compilador JIT Motor Javascript V8 Tethering por USB Permite mover apps a SD
Android 2.3Gingerbread
Interfaz de usuario renovada Soporte para vídeos WebM/VP8 Soporte para VoIP/NFC Sistema de archivos YAFFS a EXT4
Android 3.0HoneyComb
Soporte para tablets Videoconferencia (via Gtalk) Soporte para periféricos USB Widgets redimensionables
Android 4.0Ice Cream Sandwich
Multidispositivo (tablets, TV...) Interfaz Holo (Fuente Roboto) Aceleración gráfica por hardware Reconocimiento facial
Android 4.1Jelly Bean
Project Butter: Fluidez de sistema Dictado por voz (sin Internet) Notificaciones mejoradas Actualizaciones inteligentes
Problemas de la fragmentaciónCaracterísticas importantes no presentes
Versiones de Android
Versiones de Android
Pantallas y resoluciones
Pantallas y resoluciones
px (Píxel tradicional)
No compatible con varios dispositivos
dp (Píxel independiente densidad)
Compatible con varios dispositivos
sp (pixel independiente de la escala)
Ideal para fuentes
Pequeño
Mediano
Grande
Pequeño
Mediano
Grande
Pequeño
Mediano
Grande
Pantallas y resoluciones
OpenGL
Posibilidades de Android
2. Entorno de desarrolloPreparación/configuración del SDK
IDE Java SDK
Entorno de desarrollo
Eclipse+
Plugin ADT
Java SDK
Entorno de desarrollo
NetBeans+
Plugin nbandroid
Java SDK
Entorno de desarrollo
Intellij IDEA+
Plugin idea-android
Java SDK
Entorno de desarrollo
Máquina virtual Java
.javaCódigo fuente
.classBytecode compilado
JavaMáquina virtual
Máquina virtual Dalvik
.javaCódigo fuente
.dexBytecode compilado
DalvikMáquina virtual
Eclipse+
Plugin ADT
SDK
Entorno de desarrollo
Eclipse+
Plugin ADT
Entorno de desarrollo
Paso 1: Instalar Javahttp://www.java.com/es/
Paso 2: Instalar IDE Eclipsehttp://www.eclipse.org/downloads/
Paso 2: Instalar IDE Eclipsehttp://www.eclipse.org/downloads/
Europa, Ganymede, Galileo, Helios,
Indigo...
Juno (Eclipse 4.2)
Paso 3: Instalar SDK de Androidhttp://developer.android.com/sdk/
Paso 4: Instalar API de AndroidInicio / Android SDK Tools / SDK Manager
Paso 4: Instalar API de AndroidInicio / Android SDK Tools / SDK Manager
Paso 5: Instalar plugin ADTEclipse: Help / Install New Software
Paso 5: Instalar plugin ADTEclipse: Help / Install New Software
Crear máquinas virtualesInicio / Android SDK Tools / AVD Manager
Crear máquinas virtualesInicio / Android SDK Tools / AVD Manager
Crear máquinas virtualesInicio / Android SDK Tools / AVD Manager
Crear máquinas virtualesInicio / Android SDK Tools / AVD Manager
Crear máquinas virtualesInicio / Android SDK Tools / AVD Manager
Crear máquinas virtualesInicio / Android SDK Tools / AVD Manager
Crear máquinas virtualesInicio / Android SDK Tools / AVD Manager
Crear máquinas virtualesInicio / Android SDK Tools / AVD Manager
Crear máquinas virtualesInicio / Android SDK Tools / AVD Manager
VirtualBoxhttps://www.virtualbox.org/
Android x86http://www.android-x86.org/
VirtualBoxhttp://developer.android.com/sdk/
Crear máquinas virtualesInicio / Android SDK Tools / AVD Manager
Crear máquinas virtualesInicio / Android SDK Tools / AVD Manager
ADB: Android Debug Bridge
Android SDK / platform-tools / adb
http://www.emezeta.com/articulos/10-operaciones-utiles-para-android-via-adb
ADB: Android Debug Bridge
Android SDK / platform-tools / adb
http://www.emezeta.com/articulos/10-operaciones-utiles-para-android-via-adb
ADB: Android Debug Bridge
Android SDK / platform-tools / adb
http://www.emezeta.com/articulos/10-operaciones-utiles-para-android-via-adb
DDMS: Dalvik Debug MonitorAndroid SDK / tools / ddms
DDMS: Dalvik Debug MonitorAndroid SDK / tools / ddms
DDMS: Dalvik Debug MonitorAndroid SDK / tools / ddms
DDMS: Dalvik Debug MonitorAndroid SDK / tools / ddms
DDMS: Dalvik Debug MonitorAndroid SDK / tools / ddms
DDMS: Logcat (Registros)Android SDK / tools / ddms
DDMS: Logcat (Registros)Android SDK / tools / ddms
DDMS: Logcat (Registros)Android SDK / tools / ddms
DDMS: Logcat (Registros)Android SDK / tools / ddms
DDMS: Logcat (Registros)Android SDK / tools / ddms
DDMS: Logcat (Registros)Android SDK / tools / ddms
Paquete APKEstructura de una aplicación Android
Paquete APKEstructura de una aplicación Android
Crear máquinas virtualesInicio / Android SDK Tools / AVD Manager
Interfaz HoloConsejos y recomendaciones de diseño
http://developer.android.com/design/
ConsejosRecomendaciones para hacernos “fuertes”
www.emezeta.com
50KB
Compresión “on-the-fly”Obtener información rapidamente
www.emezeta.com
50KB
Compresión “on-the-fly”Obtener información rapidamente
Compressed HTML
9KB
www.emezeta.com
50KB
Compresión “on-the-fly”Obtener información rapidamente
50KB
BateríaReducir trabajo y mantener batería
Miliamperio-hora (mAh)
BateríaReducir trabajo y mantener batería
Capacidad de la batería.
Miliamperio (mA)Gasto de energía.
BateríasDependen del dispositivo y capacidad
iPhone3GS1219 mAh
Galaxy S21650 mAh
iPhone4S1420 mAh
Galaxy S32100 mAh
3G-150mA
Capacidad batería Energía Duración estimada
1500 mAh / 150 mA = 10 horas
WiFi-275mA
Capacidad batería Energía Duración estimada
1500 mAh / 275 mA = ~5 horas y media
Descarga de un MP3 (6 MB)
Transferencias cortasImplica ahorro de batería
Errores: FC y ANRTipos de errores en Android
FC (Forzar cierre)Errores de codificación en
la aplicación.
Errores: FC y ANRTipos de errores en Android
ANR (App no responde)App tarda demasiado
(+5seg) en thread “main”.
http://www.appinventor.es/
http://stackoverflow.com/
3. Plataforma Google PlayDistribución y publicación de apps
Android Market Google Play
Versión web Versión móvil
Google Play
- Precio- Icono de aplicación
- Votos (Total y media)
- Nombre de la aplicación- Autor
Google Play
- Banner de alta resolución
Google Play
- Información
Google Play
- Novedades
- Permisos
- Opiniones
Botones socialesGoogle+ o Twitter
Google Play
VotosTotal de votos y media
Google Play
Última actualizaciónFecha de la última versión
Google Play
Versión actualVersión disponible para descargar
Google Play
Versión de AndroidVersión mínima en la que funcionará la aplicación
Google Play
CategoríaGénero de la aplicación
Google Play
DescargasNúmero aproximado de descargas de la aplicación
Google Play
Actividad recienteEvolución de las descargas durante los últimos 30 días
Google Play
TamañoEspacio que ocupa la aplicación.
Google Play
PrecioPrecio de la aplicación
Google Play
ClasificaciónNivel de madurez (público)
Google Play
- Varias capturas de pantalla
Google Play
- Votos por calificación
- Valoración media- Total de votos
Google Play
- Votos por calificación
- Valoración media
- Total de votos
“Hordas de usuarios cabreados que puntúan con una estrella tu aplicación porque ...”
- Votos por calificación
- Valoración media
- Total de votos
...si la cierras, la aplicación deja de funcionar.
...si la cierras, la aplicación deja de funcionar.
...se ha caído el móvil al suelo y ya no funciona.
...si la cierras, la aplicación deja de funcionar.
...se ha caído el móvil al suelo y ya no funciona.
...la palabra “EXIT” no está traducida al español.
- Comentarios
- Versión de la app
- Puntuación para la app
Google Play
Educación: Clases virtuales
- Aplicaciones del autor
- Aplicaciones similares
- Aplicaciones instaladas
Google Play
Alta (Google)Gratuita
Alta (Checkout)Gratuita
Alta (Google play)25$ ó 20€
http://play.google.com/apps/publish/
Google Play DeveloperFormato antiguo
Google Play DeveloperFormato nuevo
Google Play Developer
Datos de la aplicación
Título
Máx: 30 carácteres
Datos de la aplicación
Descripción
Máx: 4000 carácteres
Datos de la aplicación
Novedades
Actualización
Máx: 500 carácteres
Datos de la aplicación
Traducciones
Otros idiomas
Capturas de la aplicación
Capturas
Mín: 2 capturasMáx: 8 capturas
Capturas de la aplicación
Capturas
Mín: 2 capturasMáx: 8 capturas
Capturas de la aplicación
Logo (icono)
Icono de alta calidad
Capturas de la aplicación
Logo (icono)
Icono de alta calidad
Capturas de la aplicación
Banner
Formato largo
Capturas de la aplicación
Banner
Formato largo
Capturas de la aplicación
Video
Enlace a Youtube
Otros datos
Categorización
Tipo y subtipo
Otros datos
Categorización
Tipo y subtipo
Otros datos
Tipo de contenido
Nivel de madurez
Nivel de madurez
Violencia, alcohol,drogas, etc...
Acceder a ubicación
Acceder y compartir ubicación
Contenido generado por el usuario
Otros datos
Datos del autor
URLEmail
Teléfono (opcional)
Otros datos
Política de privacidad
URL
Precios y distribución
App gratuita
Excluir paísesExcluir operadoras
App pago
Diferentes precios
Servicios y APIs
Servicios
Google Cloud Messaging
Subir aplicación APK
Subir aplicación(máx: 50MB)
Versiones actualesVersiones previas
Subir aplicación APK
Subir aplicación(máx: 50MB)
Reactivar versiones antiguas
Subir aplicación APK
Pack expansión(hasta 4GB)
Subir packs de mayor tamaño
Subir aplicación APK
Compatibilidad
Excluir dispositivos
Subir aplicación APK
Productos“in-app”
Niveles, añadidos...
Suscripciones
Pago mensual (streaming)
Estadísticas
Estadísticas
Instalaciones activas
Estadísticas
Estadísticas
Instalaciones diarias
Estadísticas
Estadísticas
Instalaciones totales
Estadísticas
Estadísticas
Exportar en formato CSV
Estadísticas
Detallado por...
Versiones de Android
Estadísticas
Detallado por...
Dispositivo (móvil, tablet...)
Estadísticas
Detallado por...
País
(Ej: Orientado a España)
Estadísticas
Detallado por...
País
(Ej: Orientación global)
Estadísticas
Detallado por...
Idioma
Estadísticas
Detallado por...
Versión de la app
Estadísticas
Detallado por...
Operadora
Estadísticas
Estadísticas de...
- Tu propia app- Categoría de tu app- Top 10 de categoría
Comentarios y valoraciones
Comentarios
No siempre serán buenos
(de hecho, serán malos)
Comentarios y valoraciones
Comentarios
No siempre serán buenos
(de hecho, serán malos)
Comentarios y valoraciones
Aportaciones
- Media de votos- Proporción
- Total de votos
Comentarios y valoraciones
Aportaciones
- Comentarios- Dispositivo- Versión app
- Voto
Comentarios y valoraciones
Aportaciones
- Filtrar por voto- Filtrar por idioma- Filtrar por versión
Gestor de informes de errores
Informes
ErroresTraza del error
Gestor de informes de errores
Informes
Comentarios del usuario
Gestor de informes de errores
Informes
Comentarios del usuario
Gestor de informes de errores
Informes
Comentarios del usuario
Gestor de informes de errores
Informes
Comentarios del usuario
Gestor de informes de errores
Informes
Comentarios del usuario
Rentabilización
Rentabilizar app
Rentabilizar aplicación
App de pago App gratuita App gratuita+ Publicidad
Freemium Demostración Añadidos
Modelo de negocio
Redes publicitarias
Redes publicitarias
VisitaRegistroCompra
DescargaProgramador
Usuario final
Anunciantes
Ingresos
Ingresos
Tipo de publicidad