Está en la página 1de 128

Desarrollo

y monetizacin de Aplicaciones Mviles


Sergio Rodrguez de Guzmn Martnez Departamento de Formacin Revisin A.1

ndice de contenidos
Introduccin a Android El Stack Inicio Rpido Diseo Monetizacin de Aplicaciones

Introduccin a Android
Introduccin a Android Historia Versiones de Android

Introduccin a Android
Android es un sistema operativo basado en Linux para

dispositivos mviles, como telfonos inteligentes y tablets. Fue desarrollado inicialmente por Android Inc., una rma comprada por Google en 2005. Es el principal producto de la Open Handset Alliance, un conglomerado de fabricantes y desarrolladores de hardware, software y operadores de servicio. Las unidades vendidas de telfonos inteligentes con Android se ubican en el primer puesto en los Estados Unidos, en el segundo y tercer trimestres de 2010, con una cuota de mercado de 43,6% en el tercer trimestre.
4

Introduccin a Android
Android tiene una gran comunidad de

desarrolladores escribiendo aplicaciones para extender la funcionalidad de los dispositivos. A la fecha, existen cerca de 500.000 aplicaciones disponibles para Android. Google Play es la tienda de aplicaciones en lnea administrada por Google, aunque existe la posibilidad de obtener software externamente. Los programas estn escritos en el lenguaje de programacin Java.

Introduccin a Android
El anuncio del sistema Android se realiz el 5 de

noviembre de 2007 junto con la creacin de la Open Handset Alliance, un consorcio de 78 compaas de hardware, software y telecomunicaciones dedicadas al desarrollo de estndares abiertos para dispositivos mviles. Google liber la mayora del cdigo de Android bajo la licencia Apache, una licencia libre y de cdigo abierto. Actualmente Android posee el 32,9% de cuota de mercado a escala mundial de los telfonos inteligentes, por delante de Symbian OS que tiene 30,6%. En tercer lugar se sita Apple con cuota de mercado del 16%.

Introduccin a Android
La estructura del sistema operativo Android se

compone de aplicaciones que se ejecutan en un framework Java de aplicaciones orientadas a objetos sobre el ncleo de las bibliotecas de Java en una mquina virtual Dalvik con compilacin en tiempo de ejecucin. Las bibliotecas escritas en lenguaje C incluyen un administrador de interfaz grca (surface manager), un framework OpenCore, una base de datos relacional SQLite, una API grca OpenGL ES 2.0 3D, un motor de renderizado WebKit, un motor grco SGL, SSL y una biblioteca estndar de C Bionic.
7

Introduccin a Android
El sistema operativo est compuesto por 12 millones

de lneas de cdigo, incluyendo 3 millones de lneas de XML, 2,8 millones de lneas de lenguaje C, 2,1 millones de lneas de Java y 1,75 millones de lneas de C++.

Historia de Android
En julio de 2005, Google adquiri Android Inc., una

pequea compaa de Palo Alto, California. Esto dio pie a rumores de que Google estaba planeando entrar en el mercado de los telfonos mviles. En Google, se desarroll una plataforma para dispositivos mviles basada en el kernel de Linux que fue promocionado tanto a fabricantes de dispositivos como operadores con la promesa de proveer un sistema exible y actualizable.
9

Historia de Android
La especulacin sobre que el sistema Android de

Google entrara en el mercado de la telefona mvil se increment en diciembre de 2006. Noticias de la BBC y The Wall Street Journal sealaron que Google quera sus servicios de bsqueda y aplicaciones en telfonos mviles. Medios impresos y en lnea comenzaron a informar de que Google estaba desarrollando un telfono con su marca.

10

Open Handset Alliance


El 5 de noviembre de 2007 la Open Handset Alliance,

un consorcio de varias compaas entre las que estn Texas Instruments, Broadcom Corporation, Nvidia, Qualcomm, Samsung Electronics, Sprint Nextel, Intel, LG, Marvell Technology Group, Motorola, y T-Mobile; se estren con el n de desarrollar estndares abiertos para dispositivos mviles.

11

Open Handset Alliance


Junto con la formacin de la Open Handset Alliance,

la OHA estren su primer producto, Android, un plataforma para dispositivos mviles construidas en la versin 2.6 del kernel de Linux. El 9 de diciembre de 2008, se anunci que 14 nuevos miembros se uniran al proyecto Android, incluyendo PacketVideo, ARM Holdings, Atheros Communications, Asustek, Garmin, Softbank, Sony Ericsson, Toshiba y Vodafone.

12

Versiones
Android ha visto numerosas actualizaciones desde

su liberacin inicial. Estas actualizaciones al sistema operativo base tpicamente arreglan bugs y agregan nuevas funciones. Generalmente cada actualizacin del sistema operativo Android es desarrollada bajo un nombre en cdigo de un elemento relacionado con postres. Los nombres en cdigo estn en orden alfabtico.

13

Versiones 1.0 y 1.1


1.0: Liberado el 23 de septiembre de 2008 1.1: Liberado el 9 de febrero de 2009

14

Versin 1.5 Cupcake (2.6.27)


Liberada el 30 de abril de 2009 Posibilidad de grabar y reproducir videos a travs del

modo camcorder Capacidad de subir videos a YouTube e imgenes a Picasa directamente desde el telfono Un nuevo teclado con prediccin de texto Soporte para Bluetooth A2DP y AVRCP Capacidad de conexin automtica para conectar a auricular Bluetooth a cierta distancia Nuevos widgets y carpetas que se pueden colocar en las pantallas de inicio Transiciones de pantalla animadas
15

Versin 1.6 Donut (2.6.29)


Liberada el 15 de septiembre de 2009. Una experiencia mejorada en el Android Market Una interfaz integrada de cmara, lmadora y galera La galera ahora permite a los usuarios seleccionar varias

fotos para eliminarlas Bsqueda por voz actualizada, con respuesta ms rpida y mayor integracin con aplicaciones nativas, incluyendo la posibilidad de marcar a contactos Experiencia de bsqueda mejorada que permite buscar marcadores, historiales, contactos y pginas web desde la pantalla de inicio.
16

Versin 1.6 Donut (2.6.29)


Actualizacin de soporte para CDMA/EVDO, 802.1x,

VPN y text-to-speech Soporte para resoluciones de pantalla WVGA Mejoras de velocidad en las aplicaciones de bsqueda y cmara Framework de gestos y herramienta de desarrollo GestureBuilder Navegacin gratuita turn-by-turn de Google

17

Versin 2.0/2.1 Eclair (2.6.29)


Liberado el 26 de octubre de 2009 Velocidad de hardware optimizada Soporte para ms tamaos de pantalla y

resoluciones Interfaz de usuario renovada Nuevo interfaz de usuario en el navegador y soporte para HTML5 Nuevas listas de contactos Una mejor relacin de contraste para los fondos Mejoras en Google Maps 3.1.2
18

Versin 2.0/2.1 Eclair (2.6.29)


Soporte para Microsoft Exchange Soporte integrado de ash para la cmara Zoom digital MotionEvent mejorado para captura de eventos

multi-touch Teclado virtual mejorado Bluetooth 2.1 Fondos de pantalla animados

19

Versin 2.2 Froyo (2.6.32)


Liberado el 20 de mayo de 2010 Optimizacin general del sistema Android, la

memoria y el rendimiento Mejoras en la velocidad de las aplicaciones, gracias a la implementacin de JIT Integracin del motor JavaScript V8 del Google Chrome en la aplicacin Browser Soporte mejorado de Microsoft Exchange (reglas de seguridad, reconocimiento automtico, GAL look- up, sincronizacin de calendario, limpieza remota)
20

Versin 2.2 Froyo (2.6.32)


Lanzador de aplicaciones mejorado con accesos

directos a las aplicaciones de telfono y Navegador Funcionalidad de Wi-Fi hotspot y thetering por USB Permite desactivar el trco de datos a travs de la red del operador Actualizacin del Market con actualizaciones automticas Cambio rpido entre mltiples idiomas de teclado y sus diccionarios

21

Versin 2.2 Froyo (2.6.32)


Marcacin por voz y compartir contactos por

Bluetooth Soporte para contraseas numricas y alfanumricas Soporte para campos de carga de archivos en la aplicacin Browser Soporte para la instalacin de aplicacin en la SD Soporte para Adobe Flash 10.1 Soporte para pantallas HDPI (720p)

22

Versin 2.3 Gingerbread (2.6.35.7)


Liberado el 6 de diciembre de 2010 Actualizacin del diseo de la interfaz de usuario Soporte para pantallas extra grandes y resoluciones

WXGA y mayores Soporte nativo para telefona VoIP SIP Soporte para reproduccin de videos WebM/VP8 y decodicacin de audio AAC Nuevos efectos de audio como reverberacin, ecualizacin, virtualizacin de los auriculares y refuerzo de graves
23

Versin 2.3 Gingerbread (2.6.35.7)


Soporte para Near Field Communication Funcionalidades de cortar, copiar y pegar

disponibles a lo largo del sistema Teclado multi-tctil rediseado Soporte mejorado para desarrollo de cdigo nativo Mejoras en la entrada de datos, audio y grcos para desarrolladores de juegos

24

Versin 2.3 Gingerbread (2.6.35.7)


Recoleccin de elementos concurrentes para un

mayor rendimiento Soporte nativo para ms sensores (como giroscopios y barmetros) Un administrador de descargas para descargar archivos grandes Administracin de la energa mejorada y control de aplicaciones mediante la administrador de tareas Soporte nativo para mltiples cmaras Cambio de sistema de archivos de YAFFS a ext4
25

Versin 3.0 Honeycomb


Mejor soporte para tablets Escritorio 3D con widgets rediseados Sistema multitarea mejorado Mejoras en el navegador web predeterminado,

entre lo que destaca la navegacin por pestaas, autorelleno de formularios, sincronizacin de favoritos con Google Chrome y navegacin privada Soporte para videochat mediante Google Talk

26

4.0 Ice Cream Sandwich


19 de Octubre de 2011 Aade las caractersticas de los smartphones a

Honeycomb Aade reconocimiento facial para desbloqueo Monitorizacin y control del uso de datos Unicacin de los contactos de redes sociales Mejoras en la fotografa Carpetas de apps Compartir informacin con NFC
27

4.0 Ice Cream Sandwich


Versin que unica el uso en cualquier dispositivo, tanto en

telfonos, tablets, televisores, netbooks, etc. Interfaz limpia y moderna con una nueva fuente llamada "Roboto", muy al estilo de Honeycomb. Opcin de utilizar los botones virtuales en la interfaz de usuario, en lugar de los botones tctiles capacitivos. llega la aceleracin por hardware, lo que signica que la interfaz podr ser manejada y dibujada por la GPU y aumentando notablemente su rapidez, su respuesta y evidentemente, la experiencia de usuario. Multitarea mejorada, estilo Honeycomb. Aadiendo la posibilidad de nalizar una tarea simplemente desplazndola fuera de la lista. Ha aadido un gestor del trco de datos de internet. El entorno le permite establecer alertas cuando llegue a una cierta cantidad de uso y desactivacin de los datos cuando se pasa de su lmite.

28

4.0 Ice Cream Sandwich


Los widgets esta en una nueva pestaa, que guran en una

lista similar a las aplicaciones en el men principal. El corrector de texto ha sido rediseado y mejorado, ofreciendo la opcin de tocar en una palabra para que nos aparezca una lista con las diferentes opciones de edicin y sugerencias de palabras similares. Las noticaciones tiene la posibilidad de descartar las que no son importantes y tambin desplegar la barra de noticaciones con el dispositivo bloqueado. La captura de pantalla, con solo pulsando el botn de bajar volumen y el botn de encendido. La aplicacin de la cmara se ha llevado un buen lavado de cara, con nuevas utilidades como es la posibilidad de hacer fotografas panormicas de forma automtica.

29

4.0 Ice Cream Sandwich


Android Beam es la nueva caracterstica que nos

permitir compartir contenido entre telfonos. Va NFC (Near Field Communication). Reconocimiento de voz del usuario Aplicacin de telfono nuevo con la funcionalidad de buzn de voz visual que le permite adelantarlo o retroceder los mensajes de voz. Reconocimiento facial, lo que hara que puedas cambiar la vista

30

4.0 Ice Cream Sandwich


Las carpetas son mucho ms fciles de crear, con un

estilo de arrastrar y soltar Un nico y nuevo framework para las aplicaciones El usuario tendr herramientas para ocultar y controlar las aplicaciones que nos cuelgue la operadora de turno o el fabricante, liberando recursos de segundo plano (ciclos de ejecucin y memoria RAM). No obstante, no se podrn desinstalar. Soporte nativo del contenedor MKV Soporte nativo para el uso de Stylus (lpiz tctil).
31

4.1-4.2 Jelly Bean


Lanzada el 13 de Noviembre de 2012 "Photo Sphere: fotos panormicas Escritura de teclado basada en gestos Mejoras en la pantalla de bloqueo, incluyendo soporte de widgets y acceso directo a la cmara Noticaciones de control de energa Salvapantallas "Daydream que muestra informacin en modo idle o conectado al dock Mltiples cuentas de usuarios (slo tablets) Soporte para display wireless (Miracast) Mejoras en la accesibilidad: triple-tap para ampliar la pantalla entera, pan y zoom con dos dedos.

32

4.1-4.2 Jelly Bean


Nueva app de reloj con reloj mundial, cronmetro y

temporizador Ahora todos los dispositivos usan la misma interfaz, sean tablets o telfonos Se ha incrementado el nmero de noticaciones y aadido las Actionable Notications para ms apps, permitiendo a los usuarios responder a ciertas noticaciones desde la barra sin la necesidad de lanzar la aplicacin directamente SELinux Always-on VPN Mensajera de grupo
33

Cuota de versiones

34

Cuota de Versiones

35

Densidades

36

Cuota de Mercado
La compaa de investigacin de mercado Canalys

estima que en el segundo trimestre de 2009, Android tendra 2,8% del mercado de telfonos inteligentes a nivel mundial. En febrero de 2010, ComScore dijo que la plataforma Android tena el 9% del mercado de telfonos inteligentes en los Estados Unidos, como estaba tasado por los operadores. Esta cifra fue superior al estimado anterior de noviembre de 2009, el cual fue del 9%. Para nales del tercer trimestre de 2010, el mercado de Android en los Estados Unidos haba crecido en un 21,4%.
37

Cuota de Mercado
En mayo de 2010, Android super en ventas a

iPhone, su principal competidor. De acuerdo a un informe del grupo NPD, Android obtuvo un 28% de ventas en el mercado de los Estados Unidos, un 8% ms que en el trimestre anterior. En el segundo trimestre de 2010, los dispositivos iOS incrementaron su participacin en un 1%, indicando que Android est tomando mercado principalmente de RIM.

38

Cuota de Mercado
En mayo de 2010, Android super en ventas a

iPhone, su principal competidor. De acuerdo a un informe del grupo NPD, Android obtuvo un 28% de ventas en el mercado de los Estados Unidos, un 8% ms que en el trimestre anterior. En el segundo trimestre de 2010, los dispositivos iOS incrementaron su participacin en un 1%, indicando que Android est tomando mercado principalmente de RIM.

39

Cuota de Mercado
Adems, los analistas apuntaron que las ventajas de

que Android fuera un sistema multi-canal, multi- operador, le permitira duplicar el rpido xito que obtuvo el sistema Windows Mobile de Microsoft. A principios de octubre de 2010, Google agreg 20 pases a su lista de lugares geogrcos donde los desarrolladores pueden enviar aplicaciones. Para mediados de octubre, la compra de aplicaciones estaba disponible en un total de 32 pases.
40

Cuota de Mercado
En diciembre de 2011 Andy Rubin dijo que se

activaban 700.000 dispositivos diariamente anteriormente en julio de 2011 se declar que se activan unos 550.000 dispositivos Android cada da, en comparacin con diciembre de 2010 que se activaban 300.000 dispositivos mviles con Android, y los 100.000 que se activaban en mayo de 2010.

41

El Stack
Introduccin al Stack Linux Libreras Nativas Dalvik VM App Framework Aplicaciones

42

Introduccin al Stack

43

Ncleo Linux
Android depende de Linux para los servicios base

del sistema como seguridad, gestin de memoria, gestin de procesos, capa de red y modelo de controladores. El ncleo tambin acta como una capa de abstraccin entre el hardware y el resto de la capa de software. Android no tiene un Sistema X Window nativo ni soporta todas las libreras GNU lo que hace difcil portar aplicaciones GNU/Linux o libreras a Android.
44

Libreras Nativas
Se pueden compilar libreras escritas en C y en otros

lenguajes a cdigo nativo ARM e instaladas usado el Android Native Development Kit (Android NDK). Se puede llamar a clases Nativas desde cdigo Java en ejecucin en la Dalvik VM usando la llamada System.loadLibrary, que es parte de las clases estndar de Android. El debugger ADB ofrece acceso shell como root al emulador permitiendo cargar y ejecutar cdigo ARM.
45

Libreras Nativas
Se puede compilar cdigo ARM usando las

herramientas tradicionales como GCC desde un PC estndar. Ejemplos:


mpeg libyuv librtmp

Dicultades para ejecucin nativa: libc Bionic,

Grcos Skia Graphics Library (SGL).

46

Dalvik VM
Dalvik es la mquina virtual (VM) de procesos en

Android. Antes de la ejecucin, las aplicaciones Android se convierten al formato compacto Dalvik Executable (.dex), que est diseado para sistemas limitados en cuanto a memoria y velocidad de procesador. Dalvik es OpenSource, escrita por Dan Bornstein.

47

Dalvik VM
Al contrario que las VM estndar, que se basan en

un sistema de Stack, Dalvik VM se basa en registros (el debate de qu sistema es mejor, an se lleva a cabo). En Android 2.2, Dalvik incorpora la caracterstica de Just-in-time compilation (JIT).
Hbrido entre lenguaje interpretado y esttico. Mejora la seguridad, adems de realizar las

traducciones dinmicamente, con mejoras de rendimiento por el uso de cachs. Compilacin por funcin o por fragmentos.

48

Dalvik VM
Las caractersticas que la distinguen de otras VM

son:

La VM se minimiz para utilizar menos espacio El constant pool fue modicado para usar slo ndices

de 32-bit para simplicar el intrprete El Java bytecode estndar ejecuta instrucciones de 8- bit en el stack.

49

Framework de Aplicaciones
Los desarrolladores tienen acceso completo a las

mismas APIs del framework usadas por las aplicaciones base (salvo excepciones). La arquitectura est diseada para simplicar la reutilizacin de componentes; cualquier aplicacin puede publicar sus capacidades y cualquier otra aplicacin puede luego hacer uso de esas capacidades (sujeto a reglas de seguridad del framework). Este mismo mecanismo permite que los componentes sean reemplazados por el usuario.
50

Framework de Aplicaciones
Android incluye un conjunto de bibliotecas de C/C++

usadas por varios componentes del sistema. Estas caractersticas se exponen a los desarrolladores a travs del framework de aplicaciones de Android; algunas son: System C library (implementacin biblioteca C estndar)
bibliotecas de medios

bibliotecas de grcos, 3D y SQLite, entre otras.

51

Aplicaciones
En la actualidad existen ms de 500.000 aplicaciones

para Android y se estima que unos 300.000 telfonos mviles se activan diariamente. La tienda de aplicaciones Android conocida como Google Play retribuye a los desarrolladores el 70% del precio de su aplicacin.

52

Aplicaciones
Asimismo, el desarrollo de aplicaciones necesita un

conocimiento aceptable de Java y estar en posesin del kit de desarrollo de software o SDK provisto por Google el cual se puede descargar gratuitamente. La publicacin de una aplicacin en Google Play necesita de la compra de una licencia de desarrollador.

53

Inicio rpido
Instalacin del SDK Hola, Mundo! El Emulador

54

Instalacin del SDK


Preparar el equipo de desarrollo y garantizar que se

cumplen los requisitos del sistema. Instalar el paquete SDK starter. (Si ests en Windows, descargar el instalador para obtener ayuda con la conguracin inicial.) Instalar el plug-in para Eclipse ADT (si se desarrolla sobre Eclipse). Aadir plataformas Android y otros componentes para el SDK. Explorar el contenido del SDK de Android (opcional).
55

Preparar el equipo de desarrollo


Sistemas Operativos Soportados
Windows XP (32-bit), Vista (32- o 64-bit), o Windows 7

(32- o 64-bit) Mac OS X 10.5.8 o posterior (slo x86) Linux (probado en Ubuntu Linux, Lucid Lynx) GNU C Library (glibc) 2.7 o superior. Ubuntu Linux, versin 8.04 o superior. Distribuciones 64-bit capaces de ejecutar aplicaciones de 32-bit.

56

Entornos de desarrollo soportados


Eclipse IDE http://www.eclipse.org/downloads/ Eclipse 3.5 (Galileo) o superior
Eclipse JDT plugin. Eclipse IDE for Java Developers Eclipse Classic (versions 3.5.1 and higher) Eclipse IDE for Java EE Developers JDK 5 o JDK 6 (JRE slo, no es suciente) Android Development Tools plugin (recomendado) No es compatible con el Gnu Compiler de Java (gcj)

Otros entornos de desarrollo o IDEs

JDK 5 o JDK 6 (JRE slo no es sucente) Apache Ant 1.8 o superior

57

Descarga del SDK


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

58

Instalacin del Plugin ADT Eclipse


Utilice la funcin de Administrador de

actualizaciones de su instalacin de Eclipse para instalar la ltima revisin de ADT en el equipo de desarrollo.

59

Instalacin del Plugin ADT Eclipse


Lanzar Eclipse, despus Help > Install New Software.... Click Add, en la esquina superior derecha. En el dilogo Add Repository, introduce "ADT Plugin" en

Name la siguiente URL en Location:

Click OK. En el dilogo Available Software, selecciona el checkbox

https://dl-ssl.google.com/android/eclipse/

junto a Developer Tools y pulsa Next. En la siguiente ventana, aparecer la lista de herramientas a descargar. Click Next. Acepta la licencia, despus Finish. Cuando la instalacin se complete, reinicia Eclipse.
60

Conguracin del plugin ADT


Selecciona Window > Preferences... para abrir el

panel de Preferencias (Mac OS X: Eclipse > Preferences). Selecciona Android en el panel de la izquierda. En SDK Location, click Browse... y localiza el directorio donde se ha extrado el SDK. Click Apply, y luego OK.

61

Actualizacin del plugin ADT


Cada cierto tiempo se puede comprobar que el plugin

est actualizado. Para ello:

Selecciona Help > Check for Updates. Si no hay actualizaciones disponibles, un dilogo lo

conrmar. Si hay actualizaciones, selecciona Android DDMS, Android Development Tools, y Android Hierarchy Viewer, despus pulsa Next. En el dilogo Update Details, pulsa Next. Lee y acepta la licencia y despus pulsa Finish. Esto descargar e instalar la ltima versin de Android DDMS y Android Development Tools. Reinicia Eclipse.
62

Aadir plataformas y otros componentes


El ltimo paso de conguracin del SDK es usar el

Android SDK y AVD Manager (herramienta includa en el SDK starter package) para descargar los componentes esenciales del SDK sobre el entorno de desarrollo.

63

Aadir plataformas y otros componentes


Se puede lanzar el Android SDK y AVD Manager de

cualquiera de las siguientes formas:

Desde Eclipse, selecciona Window > Android SDK and

AVD Manager. En Windows, doble-click sobre el chero SDK Manager.exe en el raiz del directorio Android. En Mac o Linux, abriendo un terminal y desde el directorio tools/ del Android SDK, ejecutando:
android

64

Aadir plataformas y otros componentes

65

Componentes disponibles
SDK Tools SDK Platform-Tools Android Platforms USB Driver para Windows Samples Documentation

66

Actualizacin del PATH


En Windows, botn derecho en Mi PC >

Propiedades. En la pestaa Avanzada, pulsa sobre Variables de Entorno, y modicar la entrada Path (bajo Variables del Sistema).Aade el path completo a los directorios tools/ y platform-tools/. En Linux, edita el ~/.bash_prole o ~/.bashrc. Modica la variable PATH y aade la ruta completa a los directorios tools/ y platform-tools:
export PATH=${PATH}:<sdk>/tools:<sdk>/platform-

tools

En a Mac OS X, el mtodo es como en Linux.

67

ADT Bundle
Si eres un nuevo desarrollador Android, la

recomendacin es descargar el ADT Bundle para empezar a desarrollar rpidamente sin tener que congurar tu IDE habitual. Incluye los componentes esenciales del SDK de Android y el IDE de Eclipse con el ADT (Android Developer Tools) preinstalado

68

ADT Bundle
Con una nica descarga, el ADT Bundle incluye todo

lo necesario para empezar a desarrollar apps:


Eclipse + ADT plugin Android SDK Tools Android Platform-tools La ltima plataforma Android

La ltima imagen de sistema Android para el emulador

69

Hola Mundo!
Primero debemos crear un AVD (Android Virtual

Device).

En Eclipse, selecciona Window > Android SDK and AVD

Manager. Selecciona Virtual Devices en el panel de la izquierda. Pulsa New. Escribe el nombre del AVD, algo como "mi_avd". Selecciona un target. El target es la plataforma que ejecutar el emulador. Puedes ignorar el resto de campos por ahora. Pulsa Create AVD.
70

Crear un nuevo Proyecto Android


Desde Eclipse, File > New > Project

71

Crear un nuevo Proyecto en Android


Rellena los siguiente campos:
Project name: HelloAndroid Application name: Hello, Android Package name: com.example.helloandroid (or your

own private namespace) Create Activity: HelloAndroid


Pulsa Finish

72

Crear un nuevo proyecto en Android

73

Crear un nuevo proyecto en Android


package com.example.helloandroid;

import android.app.Activity; import android.os.Bundle;


public class HelloAndroid extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } }

74

Lanzar la aplicacin
Selecciona Run > Run Selecciona Android Application

75

El Emulador

76

Diseo
Visin creativa Principios del diseo

77

Visin creativa
Esttica
El diseo de la aplicacin es clave La aplicacin debera combinar belleza, simplicidad, y

una experiencia de usuario sencilla y potente.

Simplicar la vida
Las apps hacen la vida ms fcil y son sencillas de

utilizar. Cuando el usuario utiliza la aplicacin por primera vez, deberan conocer rpidamente las caractersticas principales. No se debe saturar al usuario con demasiadas opciones ni demasiados clicks.
78

Visin creativa
Apps entretenidas
Las aplicaciones no slo tienen que ser fciles de

utilizar Pueden motivar al usuario a probar nuevas funcionalidades que modiquen el workow habitual
Multitasking Noticaciones Sharing entre apps

79

Principios del diseo


Sorprender al usuario
Fondos o supercies Animaciones situadas con cuidado Efectos de sonido

Objetos reales en lugar de botones y mens Personalizacin de la app


Buena esttica por defecto, pero permitiendo ciertas

personalizaciones que no oculten la funcionalidad principal.

80

Principios del diseo


Brevedad
La gente tiende a ignorar mensajes largos.

Una imagen vale ms que mil palabras

81

Principios del diseo


Decide por m pero dame la ltima palabra
Demasiadas opciones y decisiones al realizar una

accin confunden al usuario

Mustrame lo que necesito slo cuando lo necesito


Mens breves y especcos para la pantalla actual

Nunca pierdas las personalizaciones


Clave en el momento de actualizar

82

Estilo
Dispositivos y pantallas
Diseo de la app para telfonos y tablets Optimizacin de layouts para diferentes tamaos

(RelativeLayout y Fragmentos) Assets para todos los tipos. Recursos para diferentes densidades de pantalla (DPI).

83

Temas
Son un mecanismo consistente en la apariencia de

las aplicaciones
Holo Light Holo Dark

Holo Light with dark action bars

84

Medidas y Grids
Los dispositivos varan no slo en tamao fsico sino

en densidad de pantalla (DPI)


LDPI, MDPI, HDPI y XHDPI

85

48dp
Los componentes generalmente se distribuyen en

48dp

86

Tipografa
Desde Android 4.0 habitualmente se trabaja con

Roboto

87

Escritura
Breve Simple Friendly Lo ms importante primero Describir slo lo necesario y nada ms Evita la repeticin

88

Monetizacin de Aplicaciones
Venta de Aplicaciones Publicidad en las Aplicaciones

89

Deja que te descubran


Las aplicaciones son numerosas, variadas y difciles

de diferenciar entre s a primera vista.

90

La primera impresin cuenta


En un mercado tan concurrido, solo tienes un breve

instante para llamar la atencin, por lo que debes asegurarte de que el icono, el nombre y la descripcin de tu aplicacin causen una buena primera impresin.

Asigna una marca a tu aplicacin, no slo un nombre Asegrate de que no haya conicto con otras marcas Crea un icono en funcin del pblico al que va dirigido Invierte en el icono, capturas de pantalla y descripcin

de la aplicacin el mismo esfuerzo que a la aplicacin


Si no eres creativo trabaja con gente de diseo o marketing

91

S atrevido: Date a conocer


No tienes presupuesto para contratar una empresa de

relaciones pblicas? No hay problema: si ests dispuesto a invertir algo de tiempo y esfuerzo, encontrars numerosas formas de promocionar tu aplicacin de una forma barata.
Pide ayuda a tus contactos: publica anuncios y

actualizaciones en tus redes sociales y pide a tus amigos que te ayuden a correr la voz. Permite que los contenidos se puedan compartir en las redes sociales: cuando los usuarios alcancen un objetivo en la aplicacin (por ejemplo, completar un nivel de un juego) o encuentren algo interesante en la aplicacin, permite que compartan esta informacin directamente con sus redes sociales.
92

S atrevido: Date a conocer


Ampla tu visibilidad en otros sitios: busca

publicaciones, blogueros y otros canales multimedia centrados en aplicaciones de tu categora y envales un artculo que explique el motivo por el que tu aplicacin es nica. Aunque slo consigas una mencin de pasada en un artculo, aumentars tu visibilidad para conseguir nuevos usuarios potenciales. Logra aparecer como destacado: los sitios web de aplicaciones y los sitios de ranking y reseas tienden a destacar las aplicaciones ms interesantes y avanzadas. Intenta que tu aplicacin sea nica para llamar la atencin. Por ejemplo, puede ser la primera en adoptar una nueva funcin del dispositivo.
93

Lleva tu publicidad a los mviles


Si tu aplicacin no entra inmediatamente en la lista

de las 50 principales de un sitio de aplicaciones, tienes muchas opciones de promocin. Por ejemplo, puedes anunciarte en otras aplicaciones. Al congurar una campaa a travs de una red publicitaria, puedes anunciarte en decenas de miles de aplicaciones. Los anuncios se venden normalmente a precio de coste por clic (CPC) y dirigirn a los usuarios a la pgina del sitio de aplicaciones donde pueden descargar tu aplicacin.
94

Lleva tu publicidad a los mviles


Hay muchas redes publicitarias para mviles donde

elegir. Al seleccionar una de estas redes, comprueba que eliges la que ofrece las opciones de orientacin adecuadas para tu aplicacin. Las opciones de orientacin habituales son: plataforma, tipo de dispositivo, categora de aplicaciones y pas. La publicidad puede ofrecer ventajas en cascada. Por ejemplo, si tu publicidad potencia las descargas y coloca tu aplicacin entre las 50 principales de una tienda de aplicaciones, probablemente tendrs todava ms descargas de los usuarios que buscan en la tienda. Estas descargas 'orgnicas' pueden contribuir a mejorar tu coste por adquisicin (CPA).
95

Publicidad cruzada
La promocin cruzada es otra forma sencilla, y a menudo

gratuita, de obtener ms usuarios para tu aplicacin.


Crea tu aplicacin para que tenga una doble nalidad Usa anuncios internos Intercambia el trco

Impulsa el trco ms all del mvil Optime Software lanz versiones gratuitas de juegos clsicos como el ajedrez y las damas, y no tard en averiguar que sus usuarios activos eran ideales para recibir publicidad sobre nuevos juegos. El resultado es que Optime usa los anuncios internos para impulsar el trco a los juegos ms recientes de su cartera en diferentes plataformas y dispositivos, como iPhone, iPad y Android.
96

Obtener ingresos?
En funcin del tipo de aplicacin y de la base de

usuarios potenciales que tengas, cambiar el modelo de obtencin de ingresos que deberas elegir. Los siguientes modelos de negocio no se excluyen mutuamente y puedes obtener ingresos de tu aplicacin con varios mtodos. Por ejemplo, podras publicar una aplicacin gratuita y, a continuacin, obtener ingresos a travs de dicha aplicacin.

97

Descargas de pago nico


Supongamos que tienes una aplicacin de tness con un

nmero limitado de ejercicios y sin actualizaciones.

La recomendacin es el modelo de descarga de pago nico.

Puede que la aplicacin de pago no atraiga al pblico tan rpidamente como una gratuita, pero garantiza que obtendrs ingresos cada vez que se descargue.
Realiza un estudio: el precio justo es esencial. Lo habitual son

0,79 (1$) a 1. Comprueba las estadsticas de las tendencias. S realista Prueba mercados Lee las opiniones de los usuarios Mantn y actualiza la aplicacin. Es la forma de recuperar usuarios.

98

Freemium: Prueba gratuita


Si ofreces una versin gratuita y reducida de tu

aplicacin, puedes invitar a los usuarios a probar tu oferta sin riesgo alguno. Las aplicaciones gratuitas suelen atraer al pblico ms rpidamente. Si tu aplicacin es atractiva, es muy probable que los usuarios quieran funciones adicionales, que puedes proporcionar a cambio de una cuota. Con este modelo de negocio, debers enviar una versin reducida y otra premium a la tienda o un mercado de aplicaciones.
99

Freemium: Prueba gratuita


Recuerda que si tu aplicacin premium no ofrece un

valor aadido considerablemente ms alto que la aplicacin gratuita, corres el riesgo de perder usuarios, daar tu reputacin y recibir malas opiniones.
Suscripciones mensuales

Anuncios que desaparecen como por arte de magia

100

Obtener ingresos con los anuncios


La publicidad es un mtodo habitual para obtener

ingresos por el contenido, ya sea en televisin, en revistas o en sitios web y puede ser una fuente de ingresos legtima. La publicidad para mviles permite a los desarrolladores obtener ingresos de su aplicacin al mostrar anuncios relevantes para sus usuarios. Al ser el desarrollador, t controlas dnde y cmo aparecen los anuncios en tu aplicacin. La publicidad para mviles es un modelo de negocio en rpido crecimiento, con centenares de miles de desarrolladores que obtienen ingresos por la publicidad.
101

Obtener ingresos con los anuncios


Existen tres formas habituales en las que se compra

la publicidad para mviles:

CPC (coste por clic): los anunciantes slo pagan

cuando un usuario hace clic en su anuncio. CPM (coste por cada mil impresiones): los anunciantes pagan por cada mil impresiones para que su mensaje se presente a un determinado pblico. CPA (coste por accin): los anunciantes pagan nicamente por acciones basadas en rendimiento, como una descarga de usuario.

102

Obtener ingresos con los anuncios


Como muchos anunciantes pueden comprar inventario

de anuncios de muchas formas, el coste por cada mil impresiones efectivo (eCPM) se utiliza habitualmente como una medida estndar para comparar las fuentes publicitarias relativas. Bsicamente, el eCPM representa los ingresos estimados por cada mil impresiones que recibas.
eCPM = (ingresos totales / impresiones) x 1000

Las redes publicitarias proporcionan un kit de desarrollo

de software (SDK) publicitario que puedes implementar en tu aplicacin. El SDK enviar a la red publicitaria una solicitud de anuncio y, si hay disponible alguno, se publicar en tu aplicacin. Por cada anuncio en el que haga clic un usuario, recibirs ingresos.

103

Obtener ingresos con los anuncios


Venta directa
A medida que tu negocio vaya teniendo xito, puede

haber anunciantes que quieran negociar y comprar la publicidad directamente a travs de ti. Si tu aplicacin ha atrado inesperadamente a mucho pblico, ests en buena situacin de asegurar los patrocinios de anunciantes, es decir, que un anunciante te pague por el derecho de incluir permanentemente sus anuncios en tu aplicacin.

104

Compras desde la aplicacin


Si ofreces una aplicacin gratuita, puedes considerar la

posibilidad de ofrecer elementos, como artculos virtuales o digitales, dentro de la aplicacin. Por ejemplo, podras vender descargas de msica. Si es un juego, podras vender una espada virtual, una mejora o puntos adicionales.
Funcionales: vende vidas extra o dinero virtual para

comprar mejores armas u otros artculos en un juego. Decorativos: deja que el usuario personalice el fondo, el personaje u otros aspectos del juego o la aplicacin. Consumibles: vende artculos que caduquen o se deban volver a comprar, como comida para una mascota virtual.
105

Compras desde la aplicacin


Puedes hacer que los artculos de mayor valor que

atraigan a los usuarios ms entusiastas de la aplicacin sean escasos intencionadamente. Por ejemplo, puedes ofrecer un artculo virtual durante un periodo limitado o solo para los usuarios que accedan cada da durante una semana. Rovio Mobile ahora vende 'The Mighty Eagle', un artculo virtual, a los usuarios de Angry Birds para que les ayude a resolver cualquier nivel del juego. Se han centrado en crear un solo producto esencial para la historia en vez de crear centenares de productos con la esperanza de que los usuarios compren uno. El resultado ha sido que casi la mitad de los usuarios ha comprado el artculo virtual.
106

Seguimiento de la aplicacin
Para convertir tu aplicacin en un negocio prspero,

debes instalar un paquete de analticas que te permita realizar el seguimiento de aspectos bsicos como las descargas y las mtricas de implicacin. Debes saber cmo usan los usuarios tu aplicacin, quines son los usuarios ms activos y por qu la desinstalan o le dan una puntuacin baja. Poder medir correctamente el rendimiento de tu aplicacin puede contribuir a inuir en otras decisiones o afectar al modo en que realices cambios en el futuro.
107

Seguimiento de la aplicacin
Existen paquetes de analticas muy conocidos como

Flurry: http://www.urry.com/ La propia consola de desarrollador de Android muestra estadsticas muy detalladas del uso de la aplicacin. Tambin se pueden obtener estadsticas geogrcas, pero eso implica aadir permisos de geolocalizacin con la consiguiente restriccin de edad.

108

Seguimiento de descargas
La medida ms bsica del xito es el nmero de

descargas de la aplicacin que recibes. En los mercados de aplicaciones, este valor inuye en tu ranking. Cuanto mayor sea, ms probabilidades tendrs de llamar la atencin de los usuarios potenciales.
Revisar los datos de descarga diariamente por pas y tipo de

dispositivo, que estn disponibles en la mayora de sitios de aplicaciones. Decide si debes ofrecer una versin traducida de la aplicacin. Siempre que sea posible, establece una correspondencia entre las actividades de marketing con las descargas mediante el seguimiento de estas ltimas. Esto te ayudar a supervisar mejor la inversin en marketing para determinar el ROI de campaas tales como la publicidad.
109

Conceptos bsicos de la implicacin


Las descargas solo constituyen una parte de tu caso

de xito. Por ejemplo, consideraras que una aplicacin tiene xito si se descarga pero nunca se usa?
Uso activo: usuarios activos diariamente o

mensualmente Datos de sesin: frecuencia al abrir la aplicacin, duracin media, en qu punto deja la sesin Por ejemplo, niveles de abandono en un juego. Actualizaciones: porcentaje de usuarios distribuido por versiones de aplicacin. Redes sociales
110

Conceptos bsicos de la implicacin


Google Analytics
El nmero de usuarios activos. Desde qu parte del mundo se est utilizando la

aplicacin. Adopcin y uso de caractersticas especcas. Crashes y excepciones. Compras In-app y transacciones.

111

Relaciones con los clientes


Uno de los aspectos ms crticos de tu negocio, la

relacin con los clientes, tambin es el ms simple de mantener. Solo debes comprometerte con ser abierto y ofrecer respuestas a tus usuarios.
Lee las opiniones Responde rpidamente Pregunta a tus usuarios

112

Reexionar y Reparar
No te asustes si no va todo bien a la primera, porque

el desarrollo de aplicaciones es un proceso continuo. Seguramente tendrs que volver a tu aplicacin y hacer mejoras.

113

Repetir y mejorar
Cobertura de pblico
Tienes sucientes usuarios? Quizs has creado una

aplicacin excepcional, pero solo tienes unas pocas descargas. Si es as, puedes aumentar tus acciones de promocin. Has invertido en tu icono y descripcin de la aplicacin? Recuerda, las primeras impresiones son esenciales. Has creado una campaa de descarga de la aplicacin? Si no es as, infrmate de cmo anunciarte de forma efectiva. Tienes varias aplicaciones? La promocin cruzada ofrece muchas ventajas. Dependes de tu red personal? A veces, un planteamiento atrevido es lo mejor.
114

Repetir y mejorar
Negocio e ingresos
Quieres ganar lo suciente como para dejar tu trabajo

actual? Tienes una versin de la aplicacin gratuita y otra de pago? Consigue que los usuarios se actualicen (freemium). Los usuarios ven muchas pginas tuyas? Prueba la publicidad desde la aplicacin para obtener ingresos aprovechando esas visitas. Buscas un complemento a tus ingresos? Compras desde la aplicacin. Tus descargas de pago nico no despiertan suciente inters? Revisa los precios.
115

Repetir y mejorar
Medicin
Tienes muchas descargas pero hay poca implicacin?

Solucinalo analizando las mtricas. Inviertes ms dinero en conseguir nuevos usuarios que el que obtienes de ellos? Comprueba que conoces tu coste por adquisicin y haz el seguimiento de las descargas desde tus campaas publicitarias. No consigues clasicaciones altas? Responde a tus usuarios y no te olvides de administrar las relaciones con los clientes.

116

Venta de Aplicaciones
Existen varias modalidades de venta:
Precios y Distribucin desde la consola de developer La tarifa de Google es de un 30% del precio. Los impuestos deben estar incluidos en el precio segn el pas de venta (por ejemplo Espaa). Se puede calcular automticamente sobre el precio establecido sin impuestos. In-app Billing (API v3) Productos estndar in-app (facturar una sla vez) Modelo de Subscripcin (facturacin recurrente) Modelo Free Trial. Se congura en la consola de desarrollador sin la necesidad de cambiar el cdigo de la app
117

Venta de Aplicaciones
En ambos casos la venta se realiza en la moneda

local (), teniendo en cuenta el porcentaje de transaccin. No tiene costes por cambio de divisas ($ )

118

Procesado de pedidos y pagos


Cancelaciones de compradores
Los compradores dispondrn de 15 minutos para

cancelar la compra despus de haber descargado un programa de Google Play. Una vez que el perodo de cancelacin haya nalizado, Google realizar un cargo automtico en la tarjeta e iniciar el pago en tu cuenta de acuerdo con el calendario de pagos correspondiente.

119

Procesado de pedidos y pagos


Informes y pagos mensuales
Los comerciantes de Google Play recibirn pagos

mensuales nicamente si has recibido un pago para ese mes Como referencia, el pago de cualquier pedido procesado, reembolsado o abonado desde el da 1 de un determinado mes hasta nales del mismo se realizar aproximadamente el da 15 del mes siguiente.

120

Reembolsos y Contracargos
Los contracargos se producen cuando los compradores

reclaman un cargo que aparece en el extracto de su tarjeta de crdito a la entidad emisora de la misma.

Un tercero no autorizado ha realizado una compra con la

tarjeta de crdito del comprador. El comprador est preocupado por la validez de la compra. Se ha cargado varias veces al comprador el mismo pedido. El comprador no est satisfecho con la compra y no ha podido solucionar el problema con el comerciante. Los artculos que ha recibido el comprador no se corresponden con los descritos en el momento de la compra. El comprador no ha recibido los artculos de la compra.
121

Reembolsos y Contracargos
En los contracargos:
Si la cantidad es inferior a 10$, se carga sobre tu cuenta

de Google Wallet Merchant Center Si es superior a 10$, Google revisa los detalles del contracargo y, si es posible, enva las pruebas a la entidad emisora de la tarjeta de crdito para intentar anularlo. Si Google reclama con xito el contracargo en tu nombre, no ser necesario hacer nada ms. Si la entidad emisora de la tarjeta de crdito no resuelve el contracargo a tu favor, se cargar el importe ntegro del mismo en tu cuenta de Google Wallet Merchant Center.
122

Reembolsos y Contracargos
El comerciante establece la poltica de reembolsos

de los elementos integrados en aplicaciones. No existe la posibilidad de procesar reembolsos a travs de la funcin de facturacin integrada en aplicaciones. En su lugar, los usuarios pueden ponerse en contacto contigo directamente o a travs de Google Wallet Merchant Center

123

Comprar tus propias aplicaciones


Ten en cuenta que comprar tu propia aplicacin va

contra las polticas de Google Wallet. Si intentas comprar tu propia aplicacin, recibirs un mensaje de error. No obstante, los desarrolladores pueden probar sus aplicaciones habilitadas con licencia.

124

Informes de ventas y pagos


Si vendes aplicaciones en Google Play, en tu consola

de Google Play para desarrolladores puedes consultar informes detallados de las transacciones de Google Wallet que se hayan procesado durante un mes.
Informes de pagos Informes de ingresos Informe de ventas estimadas

125

Aspectos Legales y Fiscales


Declaracin de los Ingresos Aspectos Legales

126

Declaracin de Ingresos
Hasta 3000 al ao se puede incluir como parte de la

declaracin de la renta (basta con el NIF/DNI), como ingresos obtenidos del trabajo. A partir de 3000 al ao es necesario darse de alta como autnomo, o bien declararlo a travs de otro autnomo/empresa, y hacer la declaracin trimestral del IVA.

127

Aspectos Legales
Hay que revisar cuidadosamente los copyrights de

imgenes, sonidos, fuentes de informacin y dems. Existen diversas webs con contenido gratuito para poder usar libremente.

128