• Save
Seminario Desarrollo de Aplicaciones Móviles que Merezcan la Pena (Valencia, 2012)
Upcoming SlideShare
Loading in...5
×
 

Seminario Desarrollo de Aplicaciones Móviles que Merezcan la Pena (Valencia, 2012)

on

  • 2,434 views

Presentación de José Antonio Anta en el Seminario Esri del 29 de febrero de 2012 en Valencia, sobre desarollo de aplicaciones móviles.

Presentación de José Antonio Anta en el Seminario Esri del 29 de febrero de 2012 en Valencia, sobre desarollo de aplicaciones móviles.

¿Quieres saber más? Visita esri.es

Statistics

Views

Total Views
2,434
Views on SlideShare
2,434
Embed Views
0

Actions

Likes
3
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Seminario Desarrollo de Aplicaciones Móviles que Merezcan la Pena (Valencia, 2012) Seminario Desarrollo de Aplicaciones Móviles que Merezcan la Pena (Valencia, 2012) Presentation Transcript

  • Seminarios Esri España Desarrollo de Aplicaciones Móviles José Antonio Anta joseantonio.anta@esri.esEMPEZAMOS A LAS 10:15
  • Agenda 10:00 Requisitos de una aplicación móvil 10:15 Datos 10:30 Tecnología en Movilidad 11:00 SDK de ArcGIS Mobile 11:30 12:00 API para iOS 12:20 API para Android 12:40 API para W.Phone 7 13:00 Otras Soluciones 13:15 Conclusiones.
  • Requisitos de unaAplicación Móvil
  • Que es la movilidadLa movilidad consiste en la utilización de dispositivos informáticos o de telecomunicación, pequeños y portátiles, con conexión inalámbrica, capaces de manejar datos, información y aplicaciones de forma centralizada.
  • VIABILIDAD Antes de lanzarnos a desarrollar ¿que hace que mi aplicación sea móvil? “Modos de Usuario” usuario aburrido usuario local usuario haciendo micro-tareas Funcionalidad Menos es más, recortar al máximo el CLIENTE USUARIO siempre tiene la razón
  • Usabilidad Aplicaciones que no sean un truño Usabilidad web Importante Usabilidad Móvil Crítico 20 segundos
  • Usabilidad Volar Aterrizar
  • Usabilidad KISS fácil de ver regla del brazo extendido fácil de tocar “touch target” grandes más grandes que visualmente ponerse en situación desarrollar siempre con un dispositivo físico eliminar complejidad hasta que no se pueda quitar nada más funcionalidad, botones, información…
  • Datos
  • Fuentes de DatosDatos Raster Features CAD Datos Públicos. Direcc Generales, CCAA, … SHP Tablas ArcGIS Online, MAPABase ArcGIS.com Servicio MapaCarga y Almacenamiento enGeodatabase Está todo integrado. Abstracción del . Definición Modelo de Datos mundo real Capas Definición de Tablas Campos Relaciones, … Definición de Subtipos Geodatabase Networks Attributes Definición de Dominios 3D Objects Topology Definición de Reglas de Validación Vectors Terrain Cartography Carga Datos Schematics Images Annotation Parcel Dimensions Addresses
  • Tratamiento de los DatosTratamiento información Generalización Control Calidad. TopologíaCreación del Mapa Formación Capas Simbología Control EscalasMapa: Operacional. Información Ver, Consultar y Editar Base. Información estática, de fondo
  • Recomendaciones para un mapa en un dispositivo móvil Consideraciones: Consejos: Usuarios No GIS Preparación Geodatabase Hardware mínimo Uso de Dominios Uso de Subtipos Mucha cartografía Optimización cartografía a extraer Funcionalidad No extraer lo que no sea necesario Estudio información capas Escala de visualización de las capas Simbología especial Uso colores y contraste adaptado al medio y al dispositivo Símbolos estándar Sunlight 320x240 washes Small out Colors
  • Publicación de información Creación de Servicios Web de Mapas Mapa.MX Servicio Mapa D Servidor SIG Creación de Web Maps Servicios Mapa Web Map ArcGIS.com o Servidor Consumo SIG SDKs y APIs SOAP REST Servicios de Mapa y Web Servidor SIG Map
  • Tareas comunes en la APIs de ArcGISServicios sobre Mapas Mapa: Ver, Identificar, Buscar Imagen: Ver, Identificar, Consultar Feature: pedir feature, editarServicios de Geocodificación Localizar una dirección en un mapa También conocidos como servicios locatorServicios de geometría Realizar operaciones con relaciones espacialesServicios de Geoprocesamiento Ejecutar herramientas y modelos Desktop en WebCálculo de Rutas Optimizar rutas y conseguir las direccionesOtros: Geodata, Globe, Mobile
  • Definiciones Web Map Definición de un grupo de servicios de mapas Capas servidas por un servidor ArcGIS Server Capas Base y Capas Operativas Áreas de Interés y otras propiedades ArcGIS.COM Plataforma Web gratis de ESRI para crear mapas Crear mapas a partir de Servicios de mapa Por defecto existe una capa Base Añadir más capas Base y capas Operativas proporcionadas por ArcGIS Server. Estos “Wep Map” se comparten a “Todos”, “Grupo” o “Privado”
  • Tecnología enMovilidad
  • Tecnologías en movilidad Sistemas .. Operativos Windows XP Windows Mobile WindowsSoportes . Linux Windows 7 CE, 5, 6.0, 6.1, 6.2 IOS Android Phone 7Portátil SI SI No No No NoTablet Si Si Si Si Si -PDAs Profesionales No No Si No No NoSmartphone No No Si No Si SiSmartphone propietarios No No No Si Si -Capacidades: Formas de Trabajar:- Foto - GPS - Conectado- Distanciómetro - Acelerómetro - Desconectado- Otros Dispositivos - A veces conectado
  • Lenguajes de Desarrollo Windows. S.O Mobile CE, Windows XP 5, 6.0, 6.1, Windows Lenguajes. Linux Windows 7 6.2 IOS Android Phone 7 Visual Studio Visual Studio Visual Studio .NET No 2008 2008 Mono Touch No 2010 JAVA Eclipse Eclipse No No Eclipse No Objective C No No No XCode No No Flash Builder Flash Builder Flash Builder Flex Burrito Burrito Burrito Action ScriptJavascript *** *** *** *** *** *** IDEs: - Visual Studio 2008- Visual Studio 2010- Eclipse - Aptana*** - Xcode - Flash Builder Burrito - Monotouch
  • Soluciones Móviles de Esri ArcGIS ArcGIS GIS en Desktop ArcPad Mobile el Móvil / Engine • Desarrollo de • Herramienta SIG • Herramienta SIG herramientas GIS profesional de basada en flujos de propósito propósito general de trabajo específico “Tareas” • iOS• Windows XP/7/… • Windows Mobile • Windows Mobile • Android• Linux • Windows XP/7 • Windows XP/7 • WP7
  • Soluciones Móviles de Esri ArcGIS ArcGIS GIS en Desktop ArcPad Mobile el Móvil / Engine • Desarrollo de • Herramienta SIG • Herramienta SIG herramientas GIS profesional de basada en flujos de propósito propósito general de trabajo específico “Tareas” • iOS• Windows XP/7/… • Windows Mobile • Windows Mobile• Linux • Aplicación por •defectoXP/7 Windows XP/7 Windows • Android • WP7 API / SDK de Desarrollo
  • Soluciones Móviles de Esri ArcGIS ArcGIS GIS en Desktop ArcPad Mobile el Móvil / Engine Aplicación por defecto • ArcGIS for iOS ArcGIS Desktop ArcPad Windows ArcGIS Mobile Windows • ArcGIS for Android Windows ArcPad W.Mobile ArcGIS Mobile W.Mobile • ArcGIS for WP7 API / SDK de Desarrollo Frame Work SDK + Add-Ins Desktop ArcPad Studio SDK Mobile. .NET/JAVA Windows y W.Mobile Windows y W. Mobile •API for iOS ArcGIS Engine SDK Mobile Windows •API for Android .NET/JAVA SDK Mobile W. Mobile •API for WP7
  • Soluciones Móviles de Esri ArcGIS GIS en Ap Flex Ap Web Mobile el Móvil móviles móviles • ArcGIS for iOS ArcGIS Mobile Windows • ArcGIS for Android ArcGIS Mobile W.Mobile • ArcGIS for WP7 Frame Work SDK + SDK Mobile. Windows y W. Mobile API de ArcGIS API de ArcGIS para FLEX para Javascript •API for iOS SDK Mobile Windows •API for Android SDK Mobile W. Mobile •API for WP7
  • Soluciones de desarrollo para movilidad esri Windows. S.O Mobile CE, Windows XP 5, 6.0, 6.1, Windows Lenguajes. Linux Windows 7 6.2 IOS Android Phone 7 AG Engine SDK AG Mobile .NET ArcPad Studio SDK AG Mobile ??API iOS API WP7 JAVA AG Engine AG Engine API Android Objective C API iOS Flex API FLEX API FLEX API FLEX Action Script ? App Web API Javascript API Javascript API Javascript API Javascript Javascript API Javascript API Javascript IDEs: - Visual Studio 2008- Visual Studio 2010- Eclipse - Aptana - Xcode - Flash Builder Burrito - Monotouch
  • Flujos de trabajo ArcGIS ArcGIS GIS en Desktop ArcPad Mobile el Móvil / Engine ArcGIS Desktop y Engine. Trabajan con datos en local (versionado, replicación,…), (sin cambiar formato) ArcGIS Mobile y ArcPad. Existe el check-in y check-out. Copian datos a local (cambio formato) y posteriormente actualizan modificaciones. ArcGIS.com ArcGIS Server Mapa ArcGIS Desktop ArcEditor
  • Flujos de trabajo ArcGIS ArcGIS GIS en Desktop ArcPad Mobile el Móvil / Engine Nuevos aplicaciones para iOS, Android, W Phone7. Trabajan contra el servidor ArcGIS Server. Similar a una aplicación Web. Servicios Web ArcGIS.com ArcGIS Server Terminales móviles
  • Aplicaciones y Usuarios ArcGIS ArcGIS GIS en Desktop ArcPad Mobile el Móvil / Engine • Desarrollo de • Herramienta SIG • Herramienta SIG herramientas GIS profesional de basada en flujos de propósito propósito general de trabajo específico “Tareas” Trabajadores de “jefes” Campo Usuario Usuario GIS enEspecializado Campo Subcontratas Ciudadanos
  • Desarrollo con el SDK de ArcGIS Mobile 1- Desarrollo con el SDK de ArcGIS Mobile 2- Desarrollo con el API para iOS 3- Desarrollo con el API para Android 4- Desarrollo con el API para W. Phone 7 5- Otras Soluciones
  • ArcGIS Mobile SDK Componentes de desarrollo en .NET con funcionalidad SIG Controles SIG para la creación rápida y sencilla de aplicaciones. SDK incluido con ArcGIS Server Advanced Compatibles para Windows y Windows Mobile. Para la creación de aplicaciones personalizadas Para complementar la funcionalidad de la aplicación ArcGIS Mobile Para crear aplicaciones independientes desde cero Para aportar funcionalidad SIG a terceras aplicaciones.
  • Requisitos SDK ArcGIS Mobile Desarrollo: Visual Studio 2008, 2010. (.NET) Sistemas operativos: Windows XP SP2 (.NET Framework 3.5 SP1) Windows Vista y 7. 32bit / 64bit Ultimate, Enterprise, Business, Home Premium Controles: Windows. (.NET Framework 3.5 SP1) Windows Mobile. (.NET Framework 2.0) En el dispositivo final a desplegar aplicaciones creadas con el SDK en Windows: requiere .NET Framework 3.1 SP1 en Windows Mobile: requiere .NET Compact Framework 2.0 SP1
  • Opciones con el SDK Mobile Nueva funcionalidad sobre la Nueva aplicación aplicación ArcGIS Mobile
  • Desarrollo con el núcleo SDK Display Mapa GpsDisplay Mobile Cache GeometryServer Feature Desktop Layer Feature Annotation DataTable Layers Layer Raster Feature Layer DataReader
  • Desarrollo con el FrameworkSDK Permite acceder a la funcionalidad de la aplicación. Crear Add-Ins para Windows & Windows Mobile Aplic. Crear nueva funcionalidad: Tareas “Task” Extensiones “Extension”
  • EJEMPLO DE MODELO DATOS RED DE TELEFONIA
  • Café
  • SIG en el Móvil Que pueden hacer las aplicaciones móviles de ArcGIS: Visualizar y navegar por los mapas Encontrar una dirección o un lugar Identificar, Consultar Medir distancias y áreas Edición datos Que puede hacer las APIs de las aplicaciones móviles de ArcGIS: Mapas: Dinámicos, Cacheados, Bing, Open Street Map. Soporta multiples proyecciones Gráficos: pop-ups, graficos sketch sobre el Mapa (canvas) Tareas: Consultar, Identificar, Buscar Edición datos Localizar, Geocodificar direcciones Operaciones Geometricas Tareas de Geoprocesamiento
  • Licenciamiento de SIG en el Móvil Gratis? Con ArcGIS Server Gratis para desarrollos internos Gratis para despliegue en las “Store” Sin ArcGIS Server Con coste Si las aplicaciones generan dinero Se debe mencionar: Procedencia capas si es ArcGIS Online Procedencia capas si es Bing map Acerca de: “Esri ArcGIS API for iOS2”
  • Conceptos: API REST Interfaz Simple para acceder a los servicios que proporciona un ArcGIS Server Web Javascript Silverlight Flex Móvil iOS Android WP7• Simple: mediante URL Servicios Geom Map• Abierta GP Feature Geocodhttp://<miserver>/arcgis/rest/services/<MiMapa>/MapServer Network Imagehttp://<miserver>/arcgis/rest/services/<MiLocator/GeocodeServerhttp://<miserver>/arcgis/rest/services/Geometry/GeometryServerhttp://<miserver>/arcgis/rest/services/<MiModelo>/GPServer
  • Esquema general de unaconsulta APIvar url:String;url = "http://62.93.187.174/ArcGIS/rest/services/DGCarreteras/MapaObras/MapServer";var identifyTask:IdentifyTask = new IdentifyTask(url);var identifyParams : IdentifyParameters = new IdentifyParameters(); identifyParams.returnGeometry = false; identifyParams.tolerance = identifyTolerance; identifyParams.geometry = identifyPoint; … identifyParams.mapExtent = map.extent;identifyTask.addEventListener(IdentifyEvent.IDENTIFY_COMPLETE, onResult);identifyTask.addEventListener(FaultEvent.FAULT, onFault);IdentifyTask.execute(identifyParams);Private function onResult(event:IdentifyEvent):void{}private function onFault(event:FaultEvent):void{}
  • Desarrollo con el API para iOS 1- Desarrollo con el SDK de ArcGIS Mobile 2- Desarrollo con el API para iOS 3- Desarrollo con el API para Android 4- Desarrollo con el API para W. Phone 7 5- Otras Soluciones
  • API de ArcGIS para iOS Lenguaje de desarrollo Objective-C Integración en XCode (ejemplos, plantillas) Descarga desde “ESRI iOS Resource Center” Similar a las APIS Web (API Rest) Acceso a servicios de mapa (cacheados, dinámicos y de imágenes) Superposición de Gráficos Librería de clases, documentación, ejemplos y recursos Funcionalidad: buscar, consultar, identificar, recoger datos Objetos “Map”, “MapLayer” y “Task” (servicios de geometría, geoprocesamiento, etc…)
  • Requisitos para ArcGIS paraiOS iPhone, iPad e iPod con iOS v3.1.2 y superiores ArcGIS API para iOS 1.0 1- Requisitos Hardware: Apple Macintosh con procesador Intel MacOS: Leopard (OS X 10.5) o Snow Leopard (OS X 10.6) 2- iPhone SDK 3.2.4 (registrarse en “iPhone Developer Program”) XCode 3.2.4 3- ArcGIS iOS API 1.8. Update 1 Suscripción al „iOS Developer Program‟ de Apple Necesario para probar aplicaciones en el dispositivo real $100 al año
  • Distribución y Despliegue 1- Con Identificador de “iOS Developer Program” copia directa en el dispositivo Certificado de firmas ID dispositivo Móvil (hasta 100) ID para la aplicación iTunes se distribuirlo Hasta 100 dispositivos 2- A través del portal de desarrolladores de iOS Certificado Especial Envío a Apple Nombre Captura pantalla Categoría Descripción …
  • Desarrollo con el API para Android 1- Desarrollo con el SDK de ArcGIS Mobile 2- Desarrollo con el API para iOS 3- Desarrollo con el API para Android 4- Desarrollo con el API para W. Phone 7 5- Otras Soluciones
  • API de ArcGIS paraAndroid Lenguaje de desarrollo JAVA Integración en Eclipse (ejemplos, plantillas) Descarga desde “ESRI Resource Center” Similar a las APIS Web (API Rest) Librería de clases, documentación, ejemplos y recursos Acceso a servicios de mapa (cacheados, dinámicos y de imágenes) Funcionalidad: buscar, consultar, identificar, edición Documentación, foros, blog, códigos,…
  • Requisitos ArcGIS paraAndroid Android 2.1 y superiores. Documentación Google ArcGIS API para 1- Requisitos IDE: Eclipse 3.5 (Galileo) y 3.6 (Helios) JDK 6. Herramientas de desarrollo de Android (Google) SDK Android 2.1 API 7 o superior ADT pluging for Eclipse 2- API ArcGIS Android No existe suscripción a ningún programa de desarrollo de pago
  • Clases de la API de ArcGIS para Android
  • Distribución y Despliegue 1- Copia directa al dispositivo móvil. No es necesario clave o Id de distribución Copia directa La aplicación tiene declarado unos permisos que en la instalación en el dispositivo se deben aceptar (acceso internet, localización,…) 2- A través de Android Market place Desarrolladores Cuenta Acuerdo de distribución
  • Desarrollo con el API para Windows Phone 7 1- Desarrollo con el SDK de ArcGIS Mobile 2- Desarrollo con el API para iOS 3- Desarrollo con el API para Android 4- Desarrollo con el API para W. Phone 7 5- Otras Soluciones
  • API de ArcGIS para W.Phone 7 Lenguaje de desarrollo C# Silverlight Integración en Visual Studio (ejemplos, plantillas) Descarga desde “ESRI Resource Center” Similar a las APIS Web (API Rest) Librería de clases, documentación, ejemplos y recursos Acceso a servicios de mapa (cacheados, dinámicos y de imágenes) Funcionalidad: buscar, consultar, identificar, edición, gráficos, geoprocesamiento, cálculo de rutas,… Documentación, foros, blog, códigos, SDK interactivo,…
  • Requisitos ArcGIS para W.Phone 7 Windows 7 o Vista SP2. 1- Windows Phone Developer Tools - Visual Studio 2010 Express para WP - Silverlight 4 para VS - Microsoft Expression Blend para WP - XNA Game Studio - Emulador Windows Phone - Tools 2- Visual Studio 2010 3- Expression Blend 4 API ArcGIS Windows phone Suscripción al „Windows Phone Developer Registration‟ Necesario para probar aplicaciones en el dispositivo real +- $100 al año
  • Librerías de la API de ArcGIS paraWP 7 Librerias: Núcleo. Control Mapa, Gestión de layers, gráficos, geometrías y simbolos. Tareas de Consultas, Buscar, Identificar y Geoprocesamiento Servicios procedentes de Bing Maps Conjunto de controles como Leyenda e infoWindow Herramientas para soportar datos procedentes de otras fuente: OpenStreetMap, WMS. http://esrisilverlight.codex.com Componentes para leer Web Map
  • Distribución y Despliegue 1- Con Identificador de “Windows Phone Developer Registration” copia directa en el dispositivo 2- A través del portal de desarrolladores de Windows Phone “App Hub” para su publicación en el “Zune Marketplace”
  • Desarrollo con otras soluciones 1- Desarrollo con el SDK de ArcGIS Mobile 2- Desarrollo con el API para iOS 3- Desarrollo con el API para Android 4- Desarrollo con el API para W. Phone 7 5- Otras Soluciones
  • Desarrollo con MonoTouch y MonoDroid Que es MonoTouch y MonoDroid IDE de Novell para desarrollar aplicaciones móviles utilizando un único lenguaje - MonoDevelop - Desarrollo en C# Aprovechar código y experiencia en desarrollo en C# Se deben incluir librerías propias de iOS y ArcGIS
  • Desarrollo con Flex Idea: Un solo lenguaje de desarrollo: Actionscript + API de ArcGIS para Flex Multiplataforma: Windows, Android, iOS, BlackBerry Arquitectura Runtime en el dispositivo: SDK AIR 2.6 (se adapta a las posibilidades de cada plataforma) Framework: Adobe Flex 4.5 SDK IDE: Flash Builder 4.5, Burrito y Flash CSS API de ArcGIS for Flex Diseño especial, controles especiales Ejecución en dispositivo Móvil: Exportar archivo nativo. Android APK iOS  iPA Necesario Runtime AIR 2.6En iOS el iPA lleva dentro el RuntimeEn Android el APK lleva dentro peq código q solicita ejec RuntimeEn Blackberry viene por defecto con el Runtime
  • Desarrollo de una App Web con Javascript Navegadores Web: Desktop. Ratón, precisión Tablet. Toque dedos, no precisión, uso GPS?, uso estilo oficina. Phone. Toque dedos, GPS, resolución, procesador, orientación, cache limitado. Caráteristicas IOS Blackberry Android Pellizco SI NO NO Pan SI SI SI Crear geometría SI SI SI Editar geometría SI SI NO Dibujo Mano Alz NO NO Cámara NO - SI Giróscopo SI - Android: depende del firmware que el vendedor aplique al teléfono
  • Desarrollo de una App Web con JavascriptFramework Mobile Transiciones animadas Toolbars Buttons Listviews JQuery www.jquerymobile.com (chrome) Dojox.mobile http://docs.dojocampus.org/dojox/mobile Sencha www.sencha.com/products/touch
  • Desarrollo de una App Web con JavascriptHTML5. Colección de funcionalidad para correr en navegadores sin necesidad de Plugin Navegadores lo incorporan por defecto: iOS, Android, WP7 Mango, IE Mobile 9 (IE 9), Opera Mobile, FireFox Todavía no es estándar Distintos grados de funcionalidad para cada navegador Utilizar controlados del tipo de navegador http://caniuse.com/#Como afecta HTML5 al API Javascript de ESRI Transiciones suaves entre niveles de Zoom y Pan Permite crear hilos para Análisis, Cálculos, Recuperar información.
  • Conclusiones
  • App Nativa Vs App Web App Nativa App Web Aplicación se instala en el dispositivo El navegador del dispositivo accede a la aplicación Web Acceso ilimitado a las posibilidades del Acceso limitado a las posibilidades del dispositivo dispositivo Usabilidad propia del dispositivo Usabilidad común Fácil controlar distribución Difícil controlar distribución Exposición a través de las Store Un lenguaje para cada dispositivo Lenguaje único aunque cambios para cada modelo dispositivo Actualización depende del usuario Actualización depende programador Ciclo actualización lento Ciclo actualización rápido APIs integrables en 3ª app
  • Elegir una solución Objetivo Dispositivos Usuarios Conexión Metodología Mejor Solución Datos Coste Software Otros Condicionantes Funcionalidad
  • Gracias por su atención ¿Alguna pregunta? Jose Antonio Anta joseantonio.anta@esri.es