TallerAndroidETSII.pdf

Embed Size (px)

Citation preview

  • 7/29/2019 TallerAndroidETSII.pdf

    1/139

    Taller de Introduccin a laprogramacin en

    Sevilla, 13 de Noviembre de 2012

    Escuela Tcnica Superior de Ingeniera Informtica

    Antonio Francisco Domnguez [email protected]

    @adominguezc

    mailto:[email protected]:[email protected]
  • 7/29/2019 TallerAndroidETSII.pdf

    2/139

    Introduccin al desarrollo de aplicaciones Android

    Situacin actual

    Segn los ms prestigiosos estudios demercado, el 75 % de los dispositivos mviles

    vendidos a nivel mundial en el tercer trimestre de2012, poseen sistema operativo Android.

    En este periodo se han vendido 136 millones deunidades, con una evolucin respecto al aopasado de un 91,50 %.

  • 7/29/2019 TallerAndroidETSII.pdf

    3/139

    Introduccin al desarrollo de aplicaciones Android

    Situacin actual

    Mercado de 333,6 millones de dispositivosen todo el mundo con Android.

    68,2 % de cuota de mercado, estimandoque a finales del 2012 ocupe un 75%.

  • 7/29/2019 TallerAndroidETSII.pdf

    4/139

    Introduccin al desarrollo de aplicaciones Android

    Situacin actual

  • 7/29/2019 TallerAndroidETSII.pdf

    5/139

    Introduccin al desarrollo de aplicaciones Android

    Situacin actual

  • 7/29/2019 TallerAndroidETSII.pdf

    6/139

    Introduccin al desarrollo de aplicaciones Android

    Ventajas de desarrollar en Android

    Ventajas de desarrollar en Android

    Aunque la mayora de las aplicaciones estnescritas en Java, de forma nativa a travs delSDK de Android, tambin podemos desarrollaraplicaciones web en HTML5, CSS3 y

    Javascript o incluyendo cdigo C C++ atravs del NDK.

  • 7/29/2019 TallerAndroidETSII.pdf

    7/139

    Introduccin al desarrollo de aplicaciones Android

    Ventajas de desarrollar en Android

    Aplicaciones Android

    SDK Android (JAVA) HTML5 + CSS3 + Javascript NDK Android (C/C++)

  • 7/29/2019 TallerAndroidETSII.pdf

    8/139

    Introduccin al desarrollo de aplicaciones Android

    Ventajas de desarrollar con Android

    A diferencia de otras plataformas, desarrollar conAndroid no supone costos en licencias y

    contamos con mltiples frameworks de desarrollogratuitos y de cdigo abierto.

    El SDK de Android est a disposicin de lacomunidad en todas las plataformas existentes.

  • 7/29/2019 TallerAndroidETSII.pdf

    9/139

    Introduccin al desarrollo de aplicaciones Android

    Ventajas de desarrollar con Android

    A diferencia de otras plataformas, desarrollar conAndroid no supone costos en licencias y

    contamos con mltiples frameworks de desarrollogratuitos y de cdigo abierto.

    El SDK de Android est a disposicin de lacomunidad en todas las plataformas existentes.

  • 7/29/2019 TallerAndroidETSII.pdf

    10/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Desarrollo de aplicaciones Android nativas

    Qu herramientas necesitamos?

    Java JDK

    Entorno de desarrollo integrado (IDE) Eclipse

    SDK Android

    Plugin Android Development Tools (ADT) para

    Eclipse Dispositivo Virtual Android (AVD)

  • 7/29/2019 TallerAndroidETSII.pdf

    11/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Configuracin del entorno de desarrollo

    Paso 1.- Descarga e instalacin de Java 7JDK

    Podemos descargarlo desde la web de Oracle o bienmediante apt, incluido en los repositorios de las ltimasdistribuciones:

    sudo apt-get install openjdk-7-jdk openjdk-7-jre

  • 7/29/2019 TallerAndroidETSII.pdf

    12/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    13/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Paso 2.- Descarga e instalacin de Eclipse

    Podemos obtener la ltima versin del popular entorno dedesarrollo integrado Eclipse desde la direccinhttp://www.eclipse.org/download, siendo recomendada para eldesarrollo de aplicaciones en Android la versin paradesarrolladores JAVA.

    Una vez descargado bastar con descomprimirlo en cualquierubicacin.

    http://www.eclipse.org/downloadhttp://www.eclipse.org/download
  • 7/29/2019 TallerAndroidETSII.pdf

    14/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    15/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    16/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Paso 3.- Descargar el SDK de Android

    La ltima versin del SDK de la plataforma Android se puededescargar desde http://developer.android.com/sdk/index.html,siendo en estos momentos la ltima versin la r20 (Android4.1.2).

    Una vez descargado bastar con descomprimirlo en cualquierubicacin.

    http://developer.android.com/sdk/index.htmlhttp://developer.android.com/sdk/index.html
  • 7/29/2019 TallerAndroidETSII.pdf

    17/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    18/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Paso 4.- Descargar el plugin ADT para eclipse

    Google pone a disposicin de los desarrolladores un plugin paraeclipse llamado Android Development Tools (ADT) que facilita engran medida el desarrollo de aplicaciones para la plataforma.

    Se puede descargar mediante las opciones de actualizacin deEclipse, accediendo al men Help/ Install new software ... eindicando la URL de descarga:

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

    Se debe seleccionar e instalar el paquete completo DeveloperTools, formado por Android DDMS y Android Development Tools.

    https://dl-ssl.google.com/android/eclipsehttps://dl-ssl.google.com/android/eclipse
  • 7/29/2019 TallerAndroidETSII.pdf

    19/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    20/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    21/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    22/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Paso 5.- Configurar el plugin ADT

    En la ventana de configuracin de Eclipse, se debe acceder ala seccin de configuracin de Eclipse Window / Preferencese indicar la ruta en la que hemos descomprimido el SDK

    descargado en el paso 3.

  • 7/29/2019 TallerAndroidETSII.pdf

    23/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Paso 6.- Descargar los targets necesarios

    Adems del SDK de Android, tambin debemos descargar losllamados SDK Targets de Android, que son librerasnecesarias para desarrollar en cada una de las versiones

    concretas de Android.Por ejemplo, si queremos desarrollar para Android 2.2 Froyo,especficamente, tendremos que descargar los targetscorrespondientes a esta versin.

    Para ello accederemos al men Window / Android SDKManager, y en la seccin Available Packagesseleccionamos e instalamos los paquetes deseados.

  • 7/29/2019 TallerAndroidETSII.pdf

    24/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    25/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    26/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Paso 7.- Configurar un dispositivo virtualAndroid

    Para probar y depurar aplicaciones Android no tendremos quehacerlo necesariamente sobre un dispositivo fsico, sino que

    podremos configurar un dispositivo virtual o emulador, pararealizar estas tareas.

    Para ello accedemos a Window / AVD Manager, y en laseccin Virtual devices podremos aadir tantos dispositivoscomo deseemos, por ejemplo para distintas versiones deAndroid.

    Seleccionaremos el target (versin) de Android que utilizar ysus caractersticas de hardware como resolucin de pantalla,memoria SD, o la disponibilidad de funciones como el GPS.

  • 7/29/2019 TallerAndroidETSII.pdf

    27/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    28/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    d i l d ll d li i d id

  • 7/29/2019 TallerAndroidETSII.pdf

    29/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    I t d i l d ll d li i A d id

  • 7/29/2019 TallerAndroidETSII.pdf

    30/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    I t d i l d ll d li i A d id

  • 7/29/2019 TallerAndroidETSII.pdf

    31/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    32/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    33/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Qu nos ofrece el plugin ADT para Eclipse?

    Desarrollar

    Compilar

    Empaquetar

    Usar

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    34/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Android Project Wizard .- Genera archivos requeridos porel proyecto

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    35/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Editor de recursos .- Para disear interfaces de usuario

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    36/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Manager Android .- Para gestionar SDK y AVD

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    37/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Perspectiva DDMS.- Monitorizar y depurar aplicacionesAndroid

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    38/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Construccin automatizada de aplicaciones paraemuladores y dispositivos Android

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    39/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Soporte ProGuard.- Para optimizacin de cdigo yofuscacin

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    40/139

    p

    Desarrollo de aplicaciones Android nativas

    Nuestro primer proyecto en Android: Hola Mundo!

    Ya tenemos configurado el entorno de desarrollo paradesarrollar aplicaciones Android de forma nativa, por lo quepodemos pasar a crear nuestro primer proyecto en Android.

    Para ello creamos en Eclipse un nuevo proyecto de tipoAndroid Project.

    Indicamos su nombre, el target deseado, el nombre de laaplicacin, el paquete Java por defecto para nuestras clases yel nombre de la clase (activity) principal.

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    41/139

    p

    Desarrollo de aplicaciones Android nativas

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    42/139

    p

    Desarrollo de aplicaciones Android nativas

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    43/139

    Desarrollo de aplicaciones Android nativas

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    44/139

    Desarrollo de aplicaciones Android nativas

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    45/139

    Desarrollo de aplicaciones Android nativas

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    46/139

    Desarrollo de aplicaciones Android nativas

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    47/139

    Desarrollo de aplicaciones Android nativas

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    48/139

    Desarrollo de aplicaciones Android nativas

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    49/139

    Desarrollo de aplicaciones Android nativas

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    50/139

    Desarrollo de aplicaciones Android nativas

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    51/139

    Desarrollo de aplicaciones Android nativas

    Estructura de un proyecto AndroidCuando creamos un nuevo proyecto Android en Eclipse segenera automticamente la estructura de carpetas necesariapara poder generar posteriormente la aplicacin.

    Esta estructura ser comn para cualquier aplicacin,independientemente de su complejidad.

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    52/139

    Desarrollo de aplicaciones Android nativas

    /src

    Contiene todo el cdigo fuente de la aplicacin, cdigode la interfaz grfica, clases auxiliares, etc

    Inicialmente, Eclipse crear el cdigo bsico de la

    pantalla (Activity) principal de la aplicacin, siempre bajola estructura del paquete Java definido.

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    53/139

    Desarrollo de aplicaciones Android nativas

    /res

    Contiene todos los ficheros de recursos necesarios parael proyecto: imgenes, vdeos, cadenas de texto, etc.Estarn organizados por tipos, siendo la estructura decarpetas la siguiente:

    /res/drawable

    Contiene las imgenes de la aplicacin. Para utilizardiferentes recursos dependiendo de la resolucin del

    dispositivo, se suele dividir en varias subcarpetas: /drawable-ldpi: baja resolucin

    /drawable-mdpi: resolucin media

    /drawable-hdpi: resolucin alta

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    54/139

    Desarrollo de aplicaciones Android nativas

    /res/layout/Contiene los ficheros de definicin de las diferentespantallas de la interfaz grfica.

    Para definir distintos layouts dependiendo de la orientacin

    del dispositivo se puede dividir en dos subcarpetas: /layout: orientacin vertical

    /layout-land: orientacin horizontal

    /res/anim/

    Contiene la definicin de las animaciones utilizadas por laaplicacin.

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    55/139

    Desarrollo de aplicaciones Android nativas

    /res/menu/Contiene la definicin de los mens de la aplicacin

    /res/values/

    Contiene otros recursos de la aplicacin como, por ejemplo, cadenasde texto (strings.xml), estilos (styles.xml), colores (colors.xml), etc...

    /res/xml/

    Contiene los ficheros XML utilizados por la aplicacin.

    /res/raw/

    Contiene recursos adicionales, normalmente en formato distinto a XML,que no se incluyan en el resto de la carpeta de recursos.

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    56/139

    Desarrollo de aplicaciones Android nativas

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    57/139

    Desarrollo de aplicaciones Android nativas

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    58/139

    Desarrollo de aplicaciones Android nativas

    /genContiene una serie de elementos decdigo generados automticamente alcompilar el proyecto. Cada vez quegeneramos nuestro proyecto, lamaquinaria de compilacin de Androidgenera por nosotros una serie deficheros fuente en Java dirigidos alcontrol de los recursos de la

    aplicacin.

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    59/139

    Desarrollo de aplicaciones Android nativas

    El ms importante es el fichero R.java y la clase R.La clase R contendr en todo momento una serie deconstantes con los ID's de todos los recursos de la aplicacinincluidos en la carpeta /res, de forma que podamos accederfcilmente a estos recursos desde nuestro cdigo a travs de

    este dato.

    Por ejemplo, la constante R.drawable.ic_launcher contendr elID de la imagen ic_launcher.png contenida en la carpeta/res/drawable/.

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    60/139

    Desarrollo de aplicaciones Android nativas

    /assets/Contiene los dems ficheros auxiliares necesarios para laaplicacin (y que se incluirn en su propio paquete), porejemplo, ficheros de configuracin, de datos,

    La diferencia con los ficheros incluidos en la carpeta /res/raw/es que para stos se generar un ID en la clase R y sedeber acceder a ellos con los diferentes mtodos de accesoa recursos.

    Para los contenidos en la carpeta assets no se generar ID y

    se podr acceder a ellos mediante su ruta como a cualquierotro fichero del sistema.

    Usaremos uno u otro segn las necesidades de nuestraaplicacin.

    Introduccin al desarrollo de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    61/139

    Desarrollo de aplicaciones Android nativas

    AndroidManifest.xmlContiene la definicin en XML de los aspectos principalesde la aplicacin, como su identificacin (nombre, versin,icono...), sus componentes (pantallas, mensajes ), ypermisos necesarios para su ejecucin.

    ADT contiene un editor para este fichero llamadoAndroidManifest Editor.

    Introduccin al desarrollo de aplicaciones Android

    D ll d li i A d id i

  • 7/29/2019 TallerAndroidETSII.pdf

    62/139

    Desarrollo de aplicaciones Android nativas

    Componentes de una aplicacin AndroidEn otros entornos como Java o .NET estamosacostumbrados a manejar conceptos como ventana,control, eventos o servicios como los elementos bsicospara construir una aplicacin.

    En Android vamos a disponer de esos mismos elementospero con un pequeo cambio en la terminologa y elenfoque.

    Vamos a hacer un breve repaso de los componentesprincipales en desarrollo Android.

    Introduccin al desarrollo de aplicaciones Android

    D ll d li i A d id ti

  • 7/29/2019 TallerAndroidETSII.pdf

    63/139

    Desarrollo de aplicaciones Android nativas

    ActivitiesRepresentan el componente principal de la interfaz grfica deuna aplicacin Android.

    Representa una ventana en cualquier otro tipo de lenguaje

    visual.

    Introduccin al desarrollo de aplicaciones Android

    D ll d li i A d id ti

  • 7/29/2019 TallerAndroidETSII.pdf

    64/139

    Desarrollo de aplicaciones Android nativas

    ViewComponentes bsicos con los que seconstruye la interfaz grfica de la aplicacin.

    Seran los controles en Java o .NET.

    Android incorpora una gran cantidad decontroles bsicos, aunque podemosextender la funcionalidad de estos ocrearlos personalizados:

    Cuadros de texto

    Botones

    Listas desplegables

    Imgenes

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    65/139

    Desarrollo de aplicaciones Android nativas

    Service

    Componentes sin interfaz grfica, se ejecutan en segundoplano, al igual que los de otro sistema operativo.

    Pueden realizar cualquier tipo de acciones como actualizardatos, lanzar notificaciones, o mostrar elementos visuales(activities), si se necesita en algn momento la intervencin delusuario.

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    66/139

    Desarrollo de aplicaciones Android nativas

    Content Provider

    Un content provider es el mecanismo que utiliza Android paracompartir datos entre aplicaciones.

    Podemos compartir datos de nuestras aplicaciones sin mostrardetalles sobre su almacenamiento interno, su estructura, o suimplementacin.

    Nuestra aplicacin podr acceder a los datos de otra a travsde los content provider definidos.

    Una aplicacin que acceda a los contactos de nuestra agendautilizar content provider, por ejemplo.

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    67/139

    Desarrollo de aplicaciones Android nativas

    Broadcast Receiver

    Es un componente destinado a detectar y reaccionar antedeterminados mensajes o eventos globales generados por el

    sistema, como por ejemplo Batera baja, SMS recibido,tarjeta SD insertada, o por otras aplicaciones (cualquieraplicacin puede generar mensajes (intents) broadcast, esdecir, que no van dirigidos a una aplicacin concreta sino acualquiera que quiera escucharlo).

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    68/139

    Desarrollo de aplicaciones Android nativas

    Widget

    Elementos visuales,normalmente interactivos, que

    pueden mostrarse en la pantallaprincipal (home screen) y recibiractualizaciones peridicas.

    Muestran informacin al usuariodirectamente sobre la pantallaprincipal.

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    69/139

    Desarrollo de aplicaciones Android nativas

    Intent

    Elemento bsico de comunicacin entre los distintoscomponentes Android descritos.

    Mensajes o peticiones que son enviados entre los distintoscomponentes de una aplicacin o entre distintas aplicaciones.

    Mediante un intent se puede mostrar una actividad desdecualquier otra, iniciar un servicio, enviar un mensajebroadcast, iniciar otra aplicacin ...

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    70/139

    Desarrollo de aplicaciones Android nativas

    Componentes de una aplicacin Android

    Activities

    Views

    Services

    Content providers

    Broadcast receivers

    Widgets

    Intents

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    71/139

    Desarrollo de aplicaciones Android nativas

    Desarrollando una aplicacin Android sencilla

    En este sencillo ejemplo vamos a desarrollar una sencillaaplicacin con dos activities.

    La pantalla principal solicitar nuestro nombre y la segundapantalla nos devolver un mensaje personalizado.

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    72/139

    Desarrollo de aplicaciones Android nativas

    Paso 1.- Creacin del proyecto

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    73/139

    p

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    74/139

    p

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    75/139

    p

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    76/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    77/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    78/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    79/139

    Tendremos el diseo y la lgica del activity separado endos ficheros:

    Diseo Lgica

    /res/layout/activity_hola_usuario.xml /src/com.holausuario/HolaUsuario.java

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    80/139

    Paso 2.- Modificacin aspecto Activity principalAadiremos una serie de views (controles) modificando elfichero activity_hola_usuario.xml:

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    81/139

    Paso 3.- Diseo activity secundarioCrearemos un nuevo fichero /res/layout/mensaje.xml con unasola etiqueta TextView que mostrar el mensaje al usuario:

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    82/139

    Paso 4.- Implementacin lgica aplicacin (ficherosJava)

    Para la pantalla principal tenemos un fichero por defecto/src/com.holausuario/HolaUsuario.java:

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    83/139

    Creamos una nueva clase para la segunda pantalla de laaplicacin anloga a la primera, llamada Mensaje que extienda deActivity y que implemente el mtodo onCreate indicando queutilice la interfaz definida en R.layout.mensaje:

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    84/139

    Obtenemos una referencia a los diferentes controles de laactivity principal que queremos manipular (cuadro de texto ybotn). Para ello, utilizamos el mtodo findViewById()indicando el ID de cada control, incluidos en la clase R:

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    85/139

    Una vez que tenemos acceso a los diferentes controles,implementamos las acciones a tomar cuando pulsemos elbotn de la pantalla, implementando el evento onClick dedicho botn:

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    86/139

    Utilizaremos el intent para llamar a una actividad desde otrade la misma aplicacin, pasaremos al constructor unareferencia a la propia actividad llamadora (HolaUsuario.this), yla clase de la actividad llamada (FrmMensaje.class).

    Para pasar a la actividad el nombre del cuadro de textocreamos un objeto Bundle, que contendr una lista de paresclave-valor con toda la informacin a pasar entre lasactividades.

    Aadiremos un dato de tipo String mediante el mtodoputString(clave, valor) y aadiremos la informacin al intentmediante el mtodo putExtras(bundle).

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    87/139

    Paso 5.- Implementacin lgica activity secundaria

    Ampliaremos el mtodo Oncreate obteniendo las referencias alos mtodos manipulados (etiqueta de texto).

    Recuperaremos la informacin pasada desde la actividadprincipal y la asignaremos como texto de la etiqueta medianteel mtodo getIntent() y recuperamos su informacin asociada(objeto Bundle) mediante el mtodo getExtras().

    Construiremos el texto de la etiqueta mediante el mtodo

    setText(texto) y recuperamos el valor de la clave almacenadaen el objeto Bundle meduante getString(clave).

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    88/139

    Utilizaremos el intent para llamar a una actividad desde otrade la misma aplicacin, pasaremos al constructor unareferencia a la propia actividad llamadora (HolaUsuario.this), yla clase de la actividad llamada (FrmMensaje.class).

    Para pasar a la actividad el nombre del cuadro de textocreamos un objeto Bundle, que contendr una lista de paresclave-valor con toda la informacin a pasar entre lasactividades.

    Aadiremos un dato de tipo String mediante el mtodoputString(clave, valor) y aadiremos la informacin al intentmediante el mtodo putExtras(bundle).

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    89/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    90/139

    Paso 6.- Definicin AndroidManifest.xml

    Definiremos las actividades que componen nuestra aplicacin:

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    91/139

    Paso 7.- Ejecucin y depuracin del proyecto

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    92/139

    Documentacin para desarrolladores

    El punto de encuentro para desarrolladores Android es el sitioweb que Google ha habilitado al respecto y donde podremosencontrar recursos para disear, desarrollar y distribuirnuestras aplicaciones.

    La direccin de Android Developers es:

    http://developer.android.com/intl/es/index.html

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    http://developer.android.com/intl/es/index.htmlhttp://developer.android.com/intl/es/index.html
  • 7/29/2019 TallerAndroidETSII.pdf

    93/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    94/139

    Recursos para diseo de interfaces de usuario

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    95/139

    Guas de aprendizaje

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    96/139

    Gua completa de la API

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    97/139

    Referencia de la API

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    98/139

    Herramientas de desarrollo

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    D di f t d li i A d id

  • 7/29/2019 TallerAndroidETSII.pdf

    99/139

    Descargas cdigo fuente de aplicaciones Android

    Una de las mejores maneras de introducirse en el desarrolloAndroid y aprender a desarrollar aplicaciones profesionales, esmediante el estudio del cdigo fuente de aplicaciones ya

    existentes.

    En Internet existen numerosos recursos que ofrecen a lacomunidad de desarrolladores Android la descarga de cdigoabierto de aplicaciones para su uso, estudio, modificacin yredistribucin.

    Pasaremos a enumerar los ms populares.

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    P t d t d E li

  • 7/29/2019 TallerAndroidETSII.pdf

    100/139

    Proyectos de muestra de Eclipse

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    101/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    102/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    103/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    104/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    105/139

    Google Code (http://code.google.com)

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    106/139

    Github (www.github.com)

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    107/139

    SourceForge (www.sourceforge.net)

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    108/139

    SourceForge (www.sourceforge.net)

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    Distribucin de aplicaciones Android

  • 7/29/2019 TallerAndroidETSII.pdf

    109/139

    Distribucin de aplicaciones Android

    Google cuenta con un marketplace denominado Google Play (https://play.google.com/) a travs del cual cualquierdesarrollador puede distribuir sus aplicaciones a nivel mundial,

    siendo su pblico objetivo los ms de 300 millones deusuarios de Android en la actualidad.

    En la actualidad hay ms de 675.000 aplicaciones publicadas

    en Google Play.

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    https://play.google.com/https://play.google.com/
  • 7/29/2019 TallerAndroidETSII.pdf

    110/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    111/139

    Para empezar a publicar aplicaciones en Google Play esnecesario abrir una cuenta como desarrolladorhttp://developer.android.com/intl/es/distribute/index.html, previopago de 25,00 $ lo cual nos da derecho a poder publicarnuestras aplicaciones mediante la consola de desarrolladorAndroid.

    En Google Play podemos publicar aplicaciones de pago ogratuitas, pudiendo obtener ingresos mediante la venta deaplicaciones, por publicidad o por la prestacin de otros

    servicios.Para la publicacin de la aplicacin, slo necesitaremos elpaquete .apk que encontraremos en la carpeta bin del proyectocompilado.

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

    http://developer.android.com/intl/es/distribute/index.htmlhttp://developer.android.com/intl/es/distribute/index.html
  • 7/29/2019 TallerAndroidETSII.pdf

    112/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    113/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android nativas

  • 7/29/2019 TallerAndroidETSII.pdf

    114/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

    Desarrollo de aplicaciones Android con

  • 7/29/2019 TallerAndroidETSII.pdf

    115/139

    pHTML5, CSS3 y JavaScript

    Hemos visto como desarrollar aplicaciones Android de formanativa, pero los programadores web con conocimientos HTML5,CSS3 y JavaScript estn de suerte ya que pueden desarrollar

    aplicaciones para Android sin conocimientos especficos en Java,como si lo hicieran de forma nativa.

    En la actualidad existen numerosos frameworks libres que vienena cumplir con esta tarea y cada vez con ms cuota en el nmerode desarrolladores.

    Veamos algunos de ellos...

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

    JqueryMobile (www.jquerymobile.com)

    http://www.jquerymobile.com/http://www.jquerymobile.com/
  • 7/29/2019 TallerAndroidETSII.pdf

    116/139

    Es un framework de Javascript basado en jQuery y jQuery UI, para el desarrollode aplicaciones web y de escritorio (nativas) en dispositivos mviles.Soportando una amplia variedad de dispositivos.

    Est basado en jQuery, por lo tanto la curva de aprendizaje ser mnima paraaquellas personas que hayan utilizado jQuery.

    Su peso de (20kb) y el uso mnimo de imgenes en sus componentes.

    Uso de marcado HTML5 en la estructura de las pginas y componentes,utilizando los diferentes atributos para disparar automticamente los Widgetsde jQueryMobile. Adems podemos aplicar los diferentes comportamientos quetrae cada componente sin tener que aplicar ningn script adicional.

    Enfocado tanto a aplicaciones web como a aplicaciones nativas.

    Proporciona una potente herramientas para crear diferentes temas (themes):ThemeRoller.

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

  • 7/29/2019 TallerAndroidETSII.pdf

    117/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

    PhoneGap (www.phonegap.com)

  • 7/29/2019 TallerAndroidETSII.pdf

    118/139

    Phonegap es un framework para desarrollar aplicaciones mviles que es un clarosinnimo de sencillo.

    Se basa en tecnologas como HTML, CSS, Javascript, JQuery o Sencha Touchentre otras.

    Este conjunto de herramientas, porta casi cualquier cdigo HTML, CSS, Javascripty dems en cdigo nativo listo para compilar en el SDK. Abstrayendo al

    programador de aprender cdigo nuevo y/o ms complejo, agilizando as eldesarrollo y el mantenimiento de las aplicaciones.

    Phonegap basa todo su potencial en un fichero javascript y una librera que seencargan de hacer el port de un lenguaje a otro. Aparte, dispone de varias APIspara poder interactuar con elementos nativos del dispositivo como la cmara defotos o vdeo, el acelermetro, las redes, etc. Si queremos usar los elementos

    propios de la interfaz grfica del SO tambin es posible acceder a los mismosmediante la instalacin de plugins como NativeControls.

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

  • 7/29/2019 TallerAndroidETSII.pdf

    119/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

  • 7/29/2019 TallerAndroidETSII.pdf

    120/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

    SenchaTouch (http://www.sencha.com/products/touch)

  • 7/29/2019 TallerAndroidETSII.pdf

    121/139

    Sencha Touch est especficamente desarrollado paraaprovechar la mayor potencia y flexibilidad de HTML5, CSS3y JavaScript, haciendo uso de los nuevos elementos

    disponibles en la nueva especificacin del estndar parautilizar video, audio, guardar datos offline, as como unalibrera con mltiples widgets de usuario y control para loseventos tctiles de los dispositivos mviles con efectos muyagradables gracias a la capa de CSS3 que incorpora.

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

  • 7/29/2019 TallerAndroidETSII.pdf

    122/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

  • 7/29/2019 TallerAndroidETSII.pdf

    123/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

    DojoMobile (http://dojotoolkit.org/features/mobile)

  • 7/29/2019 TallerAndroidETSII.pdf

    124/139

    Dojo Mobile, una extensin de Dojo Toolkit, proporciona unaserie de widgets, o componentes, optimizados para su uso en undispositivo mvil, como un telfono inteligente o una pizarradigital.

    Los componentes son modelados en sus contrapartes nativas, ytendrn una apariencia nativa para aquellos que estnfamiliarizados con aplicaciones de telfonos inteligentes.

    Los componentes son completamente personalizables utilizando

    temas que, por ejemplo, permiten obtener un conjunto de estilospara los usuarios de iOS y otro distinto para los usuarios deAndroid.

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

  • 7/29/2019 TallerAndroidETSII.pdf

    125/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

  • 7/29/2019 TallerAndroidETSII.pdf

    126/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

    Appcelerator Titanium (http://www.appcelerator.com)

  • 7/29/2019 TallerAndroidETSII.pdf

    127/139

    Appcelerator Titanium es una plataforma para desarrollaraplicaciones mviles y de escritorio utilizando tecnologasweb.

    Appcelerator Titanium est desarrollado por Appcelerator Inc.y fue lanzado en diciembre del 2008.

    En junio de 2009 se aadi soporte para el desarrollo deaplicaciones mviles para Android e iPhone.2

    En abril de 2010 se aadi soporte para el desarrollo deaplicaciones para Ipad.3

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

  • 7/29/2019 TallerAndroidETSII.pdf

    128/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

  • 7/29/2019 TallerAndroidETSII.pdf

    129/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

    Caso prctico.- Desarrollando una aplicacin Android con

    JQueryMobile

  • 7/29/2019 TallerAndroidETSII.pdf

    130/139

    JQueryMobilePara comenzar crearemos un nuevo proyecto Android enEclipse.

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

    Creamos un objeto del tipo WebView que contendr la pagina

    web:

  • 7/29/2019 TallerAndroidETSII.pdf

    131/139

    web:

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

    Creamos el archivo .html con el cdigo de la pgina en

    /assets/www/index html:

  • 7/29/2019 TallerAndroidETSII.pdf

    132/139

    /assets/www/index.html:

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

  • 7/29/2019 TallerAndroidETSII.pdf

    133/139

    Introduccin al desarrollo de aplicaciones Android

    Desarrollo de aplicaciones Android HTML5+CSS3+Javascript

  • 7/29/2019 TallerAndroidETSII.pdf

    134/139

    Introduccin al desarrollo de aplicaciones Android

    Ventajas y desventajas de aplicaciones nativas y web

    Ventajas y desventajas de aplicaciones nativas y aplicaciones web

  • 7/29/2019 TallerAndroidETSII.pdf

    135/139

    Tabla 1. Aplicaciones nativas

    Ventajas

    El cdigo es ms rpido y se ejecuta directamente en el sistema operativo deldispositivo sin la necesidad de una aplicacin de navegador intermediaria. Apuntar adistintos dispositivos requiere versiones completamente separadas de la misma

    aplicacin debido a las diferencias en los lenguajes de programacin y APIs en losdiversos SDKs de plataformas.

    Pueden ser implementadas en una tienda de aplicaciones, ofreciendo un modelo dedistribucin simple y costeable. Implementar aplicaciones nativas mediante unatienda de aplicaciones normalmente requiere la aprobacin de un tercero, lo quepuede hacer considerablemente ms lento el tiempo para llegar al mercado.

    Los SDKs nativos tienen incontables dispositivos especficos para el dispositivo,normalmente completos con documentacin detallada y ejemplos. Lasactualizaciones, incluso las pequeas incrementales, requieren pasar por un procesode aprobacin, haciendo ms difcil entregar actualizaciones crticas a los usuarios.

    Introduccin al desarrollo de aplicaciones Android

    Ventajas y desventajas de aplicaciones nativas y web

    Desventajas

  • 7/29/2019 TallerAndroidETSII.pdf

    136/139

    Desventajas

    Apuntar a distintos dispositivos requiere versionescompletamente separadas de la misma aplicacin debido a lasdiferencias en los lenguajes de programacin y APIs en los

    diversos SDKs de plataformas. Implementar aplicaciones nativas mediante una tienda de

    aplicaciones normalmente requiere la aprobacin de untercero, lo que puede hacer considerablemente ms lento eltiempo para llegar al mercado.

    Las actualizaciones, incluso las pequeas incrementales,requieren pasar por un proceso de aprobacin, haciendo msdifcil entregar actualizaciones crticas a los usuarios.

    Introduccin al desarrollo de aplicaciones Android

    Ventajas y desventajas de aplicaciones nativas y web

    Tabla 2. Aplicaciones web mviles

    Ventajas

  • 7/29/2019 TallerAndroidETSII.pdf

    137/139

    j Escribir una aplicacin para varias plataformas. No ser requieren aplicaciones

    separadas para distintos dispositivos. Las aplicaciones distribuidas en la webpara ser consumidas por los navegadores no tienen acceso a muchas funcionesde dispositivo que las aplicaciones nativas s tienen (cmara, micrfono, etc.),aunque esto puede cambiar en el futuro.

    Las aplicaciones pueden ser implementadas en la web sin una tienda deaplicaciones de terceros para su distribucin. Necesita proporcionar lainfraestructura para distribuir su aplicacin, lo que puede ser ms complicado ycostoso que usar una tienda de aplicaciones.

    Usted mantiene todos los ingresos generados por sus aplicaciones (si cobra porellas). Las aplicaciones nunca se ejecutarn tan rpido como sus contrapartes

    nativas, ya que son representadas en un navegador en lugar de ser ejecutadaspor el sistema operativo mismo.

    Introduccin al desarrollo de aplicaciones Android

    Ventajas y desventajas de aplicaciones nativas y web

    Desventajas

    Las aplicaciones distribuidas en la web para ser consumidas

  • 7/29/2019 TallerAndroidETSII.pdf

    138/139

    Las aplicaciones distribuidas en la web para ser consumidaspor los navegadores no tienen acceso a muchas funciones dedispositivo que las aplicaciones nativas s tienen (cmara,micrfono, etc.), aunque esto puede cambiar en el futuro.

    Necesita proporcionar la infraestructura para distribuir suaplicacin, lo que puede ser ms complicado y costoso queusar una tienda de aplicaciones.

    Las aplicaciones nunca se ejecutarn tan rpido como suscontrapartes nativas, ya que son representadas en un

    navegador en lugar de ser ejecutadas por el sistema operativomismo.

    MUCHAS GRACIAS POR

  • 7/29/2019 TallerAndroidETSII.pdf

    139/139

    MUCHAS GRACIAS PORSU ATENCIN

    Sevilla, 13 de Noviembre de 2012

    Escuela Tcnica Superior de Ingeniera Informtica

    Antonio Francisco Domnguez [email protected]

    @adominguezc

    mailto:[email protected]:[email protected]