como crear apps para android€¦ · ejecución de apps comprobación de que todo funciona y se...

30
COMO CREAR APPS PARA ANDROID Eduardo F. Sesma Martínez

Upload: vutram

Post on 29-Sep-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

COMO CREAR APPS PARA ANDROID

Eduardo F. Sesma Martínez

1.¿QUE ES ANDROID?

● Sistema operativo pensado para smartphones

● Basado en Linux

● Núcleo de sistema (kernel) libre

● Cualquiera puede bajarse el código fuente, inspeccionarlo, compilarlo e incluso cambiarlo

● Gratuito

● Ni para programar, ni para incluirlo en un teléfono móvil hay que pagar nada

● Coste 0 o muy bajo para lanzar aplicaciones Android

1.¿QUE ES ANDROID?

● Desarrollado por la empresa Android INC.

● Comprado por Google en 2005

● Mayor impulso mediático

● Presentado oficialmente en noviembre 2007

● Open Handset Alliance (consorcio de empresas de hardware y software)

● Primer móvil en incorporar el sistema HTC DREAM

● Comercializado en octubre de 2008

● 179 $

1.¿QUE ES ANDROID?

● A finales de 2010 considerado el sistema operativo de móviles mas vendido del mundo

● Ultima versión disponible Android 7 Nougat

● Integrado en distintos dispositivos:

● Tablets, TV (Google TV), Relojes (smartwatch), Gafas (Google Glass)

● Actualmente representa aproximadamente un 75% de la cuota de mercado mundial

2.REQUISITOS PARA PROGRAMAR

● ORDENADOR● PC de sobremesa o portátil

● Gama baja-media (no necesitamos gastarnos mas de 300 euros)

● Versión más actual Java instalada (JDK)

2.REQUISITOS PARA PROGRAMAR

● EMULADOR / DISPOSITIVO CON SO ANDROID● Máquina virtual que emule Android

● Smartphone / tablet con sistema operativo Android

● Destinados a realizar pruebas del software

● Ejecución de apps

● Comprobación de que todo funciona y se comporta como debe

2.REQUISITOS PARA PROGRAMAR

● SDK (Software Development Kit) ANDROID● Conjunto de herramientas y librerias de desarrollo de

software

2.REQUISITOS PARA PROGRAMAR

● LENGUAJE DE PROGRAMACIÓN JAVA● Lenguaje de programación orientado a objetos

– Clases

– Objetos

– Atributos

– Eventos● Programar funcionalidad de la aplicación

● LENGUAJE DE PROGRAMACIÓN XML ● Lenguaje parecido a HTML (páginas web)

● Programar la apariencia de la app

3.ENTORNOS DE DESARROLLO

● ECLIPSE + PLUGIN ADT● Entorno o plataforma de trabajo de cogido abierto

● Conjunto de herramientas que permiten la creación de software

● Creado originalmente por IBM

● Mas tarde desarrollado y mejorado por la Fundación Eclipse

● Última versión Eclipse Neon 4.6

● Descarga gratuita https://www.eclipse.org/

3.ENTORNOS DE DESARROLLO

● ECLIPSE + PLUGIN ADT

3.ENTORNOS DE DESARROLLO

● ECLIPSE + PLUGIN ADT● Instalar Plugin ADT (Android Development Tools)

● Menú → Help→ Install New Software

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

● Configuración Plugin ADT

3.ENTORNOS DE DESARROLLO

● ANDROID STUDIO● IDE (entorno de desarrollo) oficial de Android

● Desarrollado por Google

● Publicado a finales de 2014

● Descarga: https://developer.android.com/studio/index.html?hl=es-419

● Instant Run

● Editor de código inteligente

● Emulador más rápido

3.ENTORNOS DE DESARROLLO

● ANDROID STUDIO

3.ENTORNOS DE DESARROLLO

● OTROS ENTORNOS● NETBEANS

● INTELLIJ

4.ELEMENTOS PRINCIPALES

● ESTRUCTURA

Drawable → imágenes que forman nuestra app

Layout → interfaces gráficas de nuestra app

Raw → sonidos de nuestra app

Values → estilos, textos, colores que definen nuestra app

4.ELEMENTOS PRINCIPALES

● ESTRUCTURA

4.ELEMENTOS PRINCIPALES

● ACTIVITY● Parte lógica y parte gráfica

● Forman las pantallas de la app

● Archivo en código JAVA

● Clase (programación)

● Atributos (variables)

● Métodos (operaciones)

● Definen su funcionalidad

● Programación del comportamiento de la aplicación

● Tantas pantallas como actividades

– Navegación entre ellas

4.ELEMENTOS PRINCIPALES

● INTERFACES GRÁFICAS (LAYOUTS)

● Parte gráfica de una activity

● Define la apariencia de la pantalla

● Escrita en lenguaje de programación XML

● Incluye elementos gráficos con los que interactuar

– Botones

– Cuadros de texto

– Listas

– Formas estructurales

– Contenedor de imagen

– Etiquetas

– Casillas de verificación

– Barras de progreso

4.ELEMENTOS PRINCIPALES

● EVENTOS● Controles gráficos están asociados a eventos

– Control de click● OnClick● OnLongClick

– Control sonido● VolumeControl● OnStartStream● OnPaused● OnFinish

– Control de touch (al tocar)● OnTouch

- ACTION.DOWN- ACTION.UP- ACTION.MOVE

CONTROLADOS DESDE JAVA

4.ELEMENTOS PRINCIPALES

● CREACIÓN APP● Pensar que aplicación vamos a crear (temática)

– Ver aplicaciones similares

– Estudiar impacto social● Diseñar pantallas

● Diseñar funcionalidad

● Desarrollar

– Lenguaje JAVA

– Lenguaje XML● Pruebas

● Corrección de errores

● Concluir la app (lista para exportar)

5.EXPORTACIÓN

● GENERAR APK● Crear archivo único que contenga toda la información de la

app

– Comprimir todos los archivos de programación, interfaces gráficas y demás recursos en un paquete

● Instalable y ejecutable

● Firmarlo para acreditar nuestra autoría

5.EXPORTACIÓN

● DISTRIBUCIÓN GOOGLE PLAY STORE● Darse de alta en la Consola de Desarrolladores de Android

● Pagar la cuota 25$

● Subir nuestro APK firmado

● Esperar comprobación por parte de GOOGLE

● Lista para descargar

6.MONETIZACIÓN

● ESTRATEGIAS● Objetivo: sacar beneficio económico de nuestra app

● Varias versiones

– Versión con publicidad● Aparición de banners publicitarios● Anuncios a pantalla completa● Otro tipo de anuncios (audio, video) que pueden

resultar mas molestos e intrusivos

– Versión sin publicidad con un precio● Libre de anuncios pero tenemos que pagar para

obtener la app y poder usarla● Ejemplo precio simbólico de 1€

6.MONETIZACIÓN

● ADMOB● Mayor empresa de publicidad en especializada en

dispositivos móviles

● Adquirida por Google en 2009 por 750 millones de $

● Dispone todo tipo de anuncios

– Ofrece el código JAVA o XML para incluirlo en nuestra app y poder mostrar publicidad

– Remuneración en función de los clicks sobre los anuncios y sobre la visualización de los mismo

– El precio que nos pagan depende de varios factores● Localización geográfica● Tipo de publicidad● Factor de conversión

6.MONETIZACIÓN

● OTRAS EMPRESAS DE PUBLICIDAD● Exoclick

● Leadbolt

● MillenialMedia

● AirPush

● MobFox

● Samsung AdHub

7.OTRAS TECNOLOGÍAS

● PHONEGAP● Framework de desarrollo de aplicaciones móviles

● Comprado por Adobe Systems

● Código abierto

● Pueden ser utilizados libremente en cualquier aplicación sin necesidad de atribución o licencias de ningún tipo

● Lenguajes de programación

– HTML5

– JavaScript

– CSS3

7.OTRAS TECNOLOGÍAS

● GAME MAKER● Entorno de desarrollo para la creación de juegos móviles

● Multiplataforma

● Programa gratuito

● Exportación de pago

● Programación basada en sprites y orientada a objetos

● Lenguaje de programación GML

8.APLICACIONES

● APLICACIONES EXITOSAS

● Whatsapp● Facebook + Messenger

● Periscope● Instagram

8.APLICACIONES

● GONLIAPPS● Aplicaciones educativas para aprender idiomas y juegos

● https://play.google.com/store/search?q=gonliapps&hl=es_419

¿PREGUNTAS?