Novedades Generales    Desarrollo                  Jose Antonio Anta.            joseantonio.anta@esri.es
Tres Tipos de Aplicaciones        Paradigmas•   MICROSOFT    -   Aplicación Clásica Desktop    -   Aplicación Basada en Ve...
Soluciones Desarrollo Plataforma ESRI. Parte 1          Esri como plataforma de desarrollo       ArcObjects               ...
Soluciones Desarrollo Plataforma ESRI. Part 2          ArcGIS Runtime para distintas plataformas SDKs              PC-Tabl...
API REST
Generalidades Runtime
Arquitectura RuntimeLocal     Geocodificación       MappingServer          GP               Edición                       ...
Runtime SDKpara Windows      Crear Aplicaciones Desktop
ArcGIS Runtime SDK    Plataforma de desarrollo para crear aplicaciones con funcionalidad SIG•   Nueva Arquitectura(64 bit ...
ArcGIS Runtime. Arquitectura                Application                    API             ArcGIS Runtime              GIS...
ArcGIS Runtime. Arquitectura  •   ArcGIS Runtime como una Caja Negra                ArcGIS API             ArcGIS REST Ser...
ArcGIS Runtime. Arquitectura                Aplicación                                      ArcGIS API                    ...
ArcGIS Runtime. Arquitectura Server y Local  •   Comparando ArcGIS Server            ArcGIS Server                        ...
Dónde se encuentra ArcGIS Runtime                                          ArcGIS Desktop                                 ...
Entornos de Desarrollo soportados      .NET WPF                JAVA                                                       ...
Mapas y Simbolización  •   ArcGIS Desktop como creador de los Mapas  •   Soporta toda la simbolización de ArcGIS incluyend...
Edición  •   Geodatabase Feature Editing      -   File y SDE Geodatabase      -   Atributos y Shape  •   Feature Services
GeoCodificación  •   Soporta todos los ArcGIS Locators que ArcGIS      online proporciona  •   Geocodificación directa e i...
Geoprocesamiento •   Herramientas, Scripts y modelos •   La herramienta depende del nivel de Runtime     -   Basic (No)   ...
API  •   NameSpaceFunción                .NET        Java                       Namespace   PackageAccessing OnlineService...
API  •   NameSpaceFunción                .NET                          Java                       Namespace               ...
API  •   NameSpaceFunción                .NET                          Java                       Namespace               ...
Runtime SDK para WindowsDEMO: Consumo de Datos y Funcionalidad en                                SERVER
Construyendo el Mapa            •   Control del Mapa            •   Datos Temporales / Vivos                -   Vehículos,...
Construyendo el Mapa            •   Control del Mapa            •   Datos Temporales / Vivos   Gráficas            •   Dat...
Construyendo el Mapa           Gráficas            Local                               Server           Dinámicas Cliente ...
Tile Packages •   ArcMap: File > Share As > Tile Package… •   Choose tile format/scheme
Dynamic Map Packages•   Documento de ArcMAp empaquetado con todas las    capas que contine en un único fichero MPK.    -  ...
Capas Gráficas•   El API cliente de Runtime tiene capas gráficas    para visualizar datos vivos/temporales    -   Vehículo...
Funcionalidad de ArcGIS RuntimeDesplegar solo lo que se necesite   •   Core       -   2D Mapping            -   Modelo car...
Runtime SDK para WindowsDEMO: Consumo de Datos y Funcionalidad en                                  LOCAL
Niveles de licencia en Runtime  •   Basic      -   Acceso a servicios de ArcGIS Server      -   Cacheados en Local      - ...
Distribución  •   Basic      -   Con ArcGIS Server no tiene coste      -   Sigue los modelos de subscripción de ArcGIS Onl...
Runtime SDKpara AndroidCrear Aplicaciones para Dispositivos Móviles
Soluciones Desarrollo Plataforma ESRI. Part 2          ArcGIS Runtime para distintas plataformas SDKs              PC-Tabl...
SDK Requisitos  •   Java Development Platform (JDK)          http://www.oracle.com/technetwork/java/javase/downloads/index...
Tipos de Capas (Layers)  •   Dynamic Map Service Layers      -   Image Service Layer  •   Tiled Map Service Layers      - ...
Cuadro de Relaciones entre Layers
Tareas (Tasks)  •   Todas la tareas son asíncronas      -   Identify      -   Query      -   Geocode      -   GeoProcessing
Mostrar los resultados de Identify• IdentifyResultSpinner -   Rellenar el adaptador con la lista de resultados -   Añadir ...
Callouts & Popups•   Callouts?    -   Item de mapa de ArcGIS SDK•   Popups?    -   Concepto de ArcGIS Webmap    -   Config...
Callout• Map      callout -   Un callout por mapa -   Definir estilo en XML -   Definir content      -   Text ó View/ViewG...
Popup•   Procedente de la configuración de webmap•   Flujo de trabajo básico    -   Obtener PopupInfo- describe el popup d...
Queries, realizar consultas•   Query    -   Clase que contiene los parámetros de la consulta a ser        ejecutada en el ...
Edición•   Uso del Feature Services    -   Mismo modelo que otras web apis    -   applyEdits()•   Demostración del Attribu...
Off-Line  •   Añadir mapa base
Consejos Off-Line•   Utilizar en memoria una “feature collection”    -   Feature set [array de entidades]•   Editar entida...
Ejemplos Off-Line•   Jackson JsonParser•   Serializar a disco    -    FeatureSet.toJson(); - String    -    JsonGenerator....
GPS/COMPASS•   Android Location Service   •   Uso del SensorManager•   Añade funciones útiles     •   Objeto Sensor    -  ...
HTML5
HTML5                 Aplicación Nativa  Aplicación Web•   Soluciones    1- Ejecutar Aplicación Web en Navegadores (PC ó...
Api AGOL
Accediendo al portal•   Clase Portal    -    Punto de entrada    -    Instanciar con credencial o como invitado    -    Do...
Conclusiones
En resumen…•   Plataforma ArcGIS Online•   Diversas soluciones    -   Para cada entorno    -   Para cada problema    -   A...
¿Alguna pregunta?Javier Abadía Miranda        javier.abadia@esri.esJose Antonio Anta Viguera:   joseantonio.anta@esri.es
Upcoming SlideShare
Loading in...5
×

Seminario Esri Como Plataforma para Desarrolladores (II)

1,277

Published on

Segunda presentación utilizada por los ponentes del seminario celebrado en Madrid el pasado 17 de mayo.

Si necesitas más información sobre todas las ventajas y apoyo que Esri España ofrece a los emprendedores y desarrolladores, visita esri.es

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,277
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide
  • Google addressed issues with emulator and support for Open GL. Emulator support occurred after the dev summit event. http://blogs.esri.com/esri/arcgis/2012/05/02/arcgis-runtime-sdk-for-android-v1-1-supports-android-emulator/.
  • calloutsGet callout from the mapSet style using xml, attributeset valur pairSet anchor floating or explicitly (left right top etc…)Refresh to redraw new contentShow at point - Can move and set point
  • Seminario Esri Como Plataforma para Desarrolladores (II)

    1. 1. Novedades Generales Desarrollo Jose Antonio Anta. joseantonio.anta@esri.es
    2. 2. Tres Tipos de Aplicaciones Paradigmas• MICROSOFT - Aplicación Clásica Desktop - Aplicación Basada en Ventanas, Menús, Botones,… - Aplicación Instalable en Cliente Desktop• GOOGLE - Aplicación Web - No requiere Instalación. Aplicación en Servidor• APPLE - Aplicación Pequeña - Vinculada al Dispositivo - Funcionalidad Especifica
    3. 3. Soluciones Desarrollo Plataforma ESRI. Parte 1 Esri como plataforma de desarrollo ArcObjects APIs Web Python SDK ArcGIS Runtimes Explorer Aplicaciones Aplicaciones API GDB Aplicaciones• ArcGIS Desktop, Server • ArcGIS Server • Varias API REST: ArcSDEAdd-ins: • ArcGIS Desktop Base para la explotación del SDK Runtime SDK Servidor • Objective C APIs • JavaArcGIS Engine: Aplicaciones • Silverlight • Apl. Independiente • Javascript • .NET • ArcGIS Explorer • Flex • WPFServer: SOE • Silverlight SDK SDK • Ampliar funcionalidad • APIs Complementarias • .NET • .NET Servidor • SharePoint • Google • Bing .NET y Java
    4. 4. Soluciones Desarrollo Plataforma ESRI. Part 2 ArcGIS Runtime para distintas plataformas SDKs PC-Tablet Dispositivos Móviles Windows Linux Windows iOS Android Windows Mobile PhoneAplicaciones Aplicaciones Aplicaciones Aplicaciones Aplicaciones Aplicaciones• Ninguna • Ninguna • ArcGIS for WM • ArcGIS for iOS • ArcGIS for Android • ArcGIS for WPRuntime SDK Runtime SDK Runtime SDK Runtime SDK Runtime SDK Runtime SDK• WPF, Java • Qt, Java • .NET • Objective C • Java • Silverlight
    5. 5. API REST
    6. 6. Generalidades Runtime
    7. 7. Arquitectura RuntimeLocal Geocodificación MappingServer GP Edición WPF Java Capacidades de la Plataforma Tile Package GPS Messaging Sinbología Android iOSRuntime OpenGL DirectXCore Server Sync Offline Rutas Windows Offline Mobile Spatial analysis GeocodificaciónRemote Geocodificación Mapping WindowsServer GP Edición Phone
    8. 8. Runtime SDKpara Windows Crear Aplicaciones Desktop
    9. 9. ArcGIS Runtime SDK Plataforma de desarrollo para crear aplicaciones con funcionalidad SIG• Nueva Arquitectura(64 bit Nativo y 32)• API Moderna (WPF, Java and Qt) (Windows y Linux)• Funcionalidad: - Mapping, Navegación, Identificar, Consultas, Buscar, Edición, Geolocalización y Geoprocesamiento. - Funcionalidad residente en Local o en el Servidor• Fácil de Desplegar - No requiere instalación Runtime - Independiente de otras instalaciones de ArcGIS - Software, mapas y datos ArcGIS . . . Trabajo en entornos conectados y desconectados Datos Locales
    10. 10. ArcGIS Runtime. Arquitectura Application API ArcGIS Runtime GIS Runtime
    11. 11. ArcGIS Runtime. Arquitectura • ArcGIS Runtime como una Caja Negra ArcGIS API ArcGIS REST Services Caja Negra GIS Runtime
    12. 12. ArcGIS Runtime. Arquitectura Aplicación ArcGIS API ArcGIS REST Services http REST Servidor Web Embebido ArcGISRuntime.exe Process One Memoria Compartida Worker Worker Worker Process Two ArcGISRuntime.exe ArcGISRuntime.exe Process Three ArcGISRuntime.exe Process Four
    13. 13. ArcGIS Runtime. Arquitectura Server y Local • Comparando ArcGIS Server ArcGIS Server ArcGIS Runtime
    14. 14. Dónde se encuentra ArcGIS Runtime ArcGIS Desktop ArcGIS Engine ArcGIS Runtime ArcGIS Explorer Map Objects ArcReader
    15. 15. Entornos de Desarrollo soportados .NET WPF JAVA Qt Visual Studio 2010 Eclipse - Galileo Qt 4.7.3 Visual Studio Express Helios, Indigo Qt Creator Expression Blend 2.2.1 .NET 4 SWING Windows 32/64 bit Linux 64 bit
    16. 16. Mapas y Simbolización • ArcGIS Desktop como creador de los Mapas • Soporta toda la simbolización de ArcGIS incluyendo representaciones • Soporte de “Maplex”: Anotaciones y Etiquetado • Permite: Mapa Dinámico o Cacheado
    17. 17. Edición • Geodatabase Feature Editing - File y SDE Geodatabase - Atributos y Shape • Feature Services
    18. 18. GeoCodificación • Soporta todos los ArcGIS Locators que ArcGIS online proporciona • Geocodificación directa e inversa • Geocodificación por línea de comando • Geocodes soportados mediante Locator Packages
    19. 19. Geoprocesamiento • Herramientas, Scripts y modelos • La herramienta depende del nivel de Runtime - Basic (No) - Standard (ArcEditor) - … existe una lista con todas las herramientas
    20. 20. API • NameSpaceFunción .NET Java Namespace PackageAccessing OnlineServicesUtilizing Local DataManage Local ServerGeometrySearchGeoprocessingToolkit
    21. 21. API • NameSpaceFunción .NET Java Namespace PackageAccessing Online ESRI.ArcGIS.ClientServicesUtilizing Local Data ESRI.ArcGIS.Client.LocalManage Local Server ESRI.ArcGIS.Client.LocalGeometry ESRI.ArcGIS.Client.GeometrySearch ESRI.ArcGIS.Client.TasksGeoprocessing ESRI.ArcGIS.Client.TasksToolkit ESRI.ArcGIS.Client.Toolkit
    22. 22. API • NameSpaceFunción .NET Java Namespace PackageAccessing Online ESRI.ArcGIS.Client Com.esri.mapServicesUtilizing Local Data ESRI.ArcGIS.Client.Local Com.esri.client.localManage Local Server ESRI.ArcGIS.Client.Local Com.esri.client.localGeometry ESRI.ArcGIS.Client.Geometry Com.esri.core.geometrySearch ESRI.ArcGIS.Client.Tasks Com.esri.core.tasksGeoprocessing ESRI.ArcGIS.Client.Tasks Com.esri.core.tasksToolkit ESRI.ArcGIS.Client.Toolkit Com.esri.client.toolkit
    23. 23. Runtime SDK para WindowsDEMO: Consumo de Datos y Funcionalidad en SERVER
    24. 24. Construyendo el Mapa • Control del Mapa • Datos Temporales / Vivos - Vehículos, Eventos, Resultados… • Datos Operacionales - Elementos de interés, Zonas, Redes… • Mapa Base - Imágenes, Topograficos…
    25. 25. Construyendo el Mapa • Control del Mapa • Datos Temporales / Vivos Gráficas • Datos Operacionales Dinámicas • Mapa Base Tiled
    26. 26. Construyendo el Mapa Gráficas Local Server Dinámicas Cliente Server API Tiled Nube
    27. 27. Tile Packages • ArcMap: File > Share As > Tile Package… • Choose tile format/scheme
    28. 28. Dynamic Map Packages• Documento de ArcMAp empaquetado con todas las capas que contine en un único fichero MPK. - Conteniendo todos los datos. - Haciendo referencia al origen de datos original (ruta)• El MPK se descomprime la con Runtime - <My Documents>ArcGISPackages
    29. 29. Capas Gráficas• El API cliente de Runtime tiene capas gráficas para visualizar datos vivos/temporales - Vehículos, Personas, Eventos, Resultados de consultas, Interacción del usuario...• Edición de geometrías, atributos y simbolización bajo demanda.• Los gráficos se almacenan en la memoria del cliente
    30. 30. Funcionalidad de ArcGIS RuntimeDesplegar solo lo que se necesite • Core - 2D Mapping - Modelo cartográfico de ArcGIS - Enterprise y File Geodatabases - Edición de feature y atributos - Servicios ArcGIS Server • Formatos adicionales (SDE Direct Connect, Rasters, Shapefile,…) • Geoprocesamiento • Geocodificación • Python • Proyecciones
    31. 31. Runtime SDK para WindowsDEMO: Consumo de Datos y Funcionalidad en LOCAL
    32. 32. Niveles de licencia en Runtime • Basic - Acceso a servicios de ArcGIS Server - Cacheados en Local - GPS • Standard - Datos, Geoprocesamiento y Geolocalizadores en Local - Edición Geodatabase - Rutas • Extensiones - Spatial Analysis - 3D Analysis - Network Analysis
    33. 33. Distribución • Basic - Con ArcGIS Server no tiene coste - Sigue los modelos de subscripción de ArcGIS Online • Standard - 50-pack - Venta de paquetes adicionales de 10 ó 50 • SDK Runtime incluido en Esri Developer Network (EDN)
    34. 34. Runtime SDKpara AndroidCrear Aplicaciones para Dispositivos Móviles
    35. 35. Soluciones Desarrollo Plataforma ESRI. Part 2 ArcGIS Runtime para distintas plataformas SDKs PC-Tablet Dispositivos Móviles Windows Linux Windows iOS Android Windows Mobile PhoneAplicaciones Aplicaciones Aplicaciones Aplicaciones Aplicaciones Aplicaciones• Ninguna • Ninguna • ArcGIS for WM • ArcGIS for iOS • ArcGIS for Android • ArcGIS for WPRuntime SDK Runtime SDK Runtime SDK Runtime SDK Runtime SDK Runtime SDK• WPF, Java • Qt, Java • .NET • Objective C • Java • Silverlight
    36. 36. SDK Requisitos • Java Development Platform (JDK) http://www.oracle.com/technetwork/java/javase/downloads/index.html • Eclipse Development Platform (3.6+ Helios) - http://www.eclipse.org/downloads/ • Google Android SDK 2.2 (API 8) y superior - https://developer.android.com/sdk/index.html • Google ADT para Eclipse • Android powered phone, 2.2+ - Emulador no está soportado?? - SI: http://blogs.esri.com/esri/arcgis/2012/05/02/arcgis-runtime-sdk-for-android-v1-1- supports-android-emulator/
    37. 37. Tipos de Capas (Layers) • Dynamic Map Service Layers - Image Service Layer • Tiled Map Service Layers - ArcGIS Server - Bing Maps - Local . • Graphics Layers • Feature Layers • Group Layer
    38. 38. Cuadro de Relaciones entre Layers
    39. 39. Tareas (Tasks) • Todas la tareas son asíncronas - Identify - Query - Geocode - GeoProcessing
    40. 40. Mostrar los resultados de Identify• IdentifyResultSpinner - Rellenar el adaptador con la lista de resultados - Añadir a la vista para su visualización - El spinner muestra los atributos con dominios - Posibilidad de incluir en el adaptador los cambios de visualización
    41. 41. Callouts & Popups• Callouts? - Item de mapa de ArcGIS SDK• Popups? - Concepto de ArcGIS Webmap - Configuración online, consumible en todas las apps y apis
    42. 42. Callout• Map callout - Un callout por mapa - Definir estilo en XML - Definir content - Text ó View/ViewGroup de android - Mostrar en una ubicación (punto) TextView msg = new TextView(this); msg.setBackgroundColor(Color.BLACK); msg.setText(address); msg.setTextSize(12); msg.setTextColor(Color.WHITE); Callout callout = map.getCallout(); callout.setAnchor(Callout.ANCHOR_POSITION_FLOATING); callout.setStyle(R.xml.calloutstyle); callout.refresh(); callout.show(addressPoint, msg);
    43. 43. Popup• Procedente de la configuración de webmap• Flujo de trabajo básico - Obtener PopupInfo- describe el popup del featurelayer - Ejecutar AsynchTask para obtener las entidades del featurelayer - Obtener los Graphics del featureset - Crear un PopupView usando Graphics and PopupInfo - Añadir PopupViews al PopupContainer - Añadir PopupContainer y MapContext al PopupDialog - Mostrar
    44. 44. Queries, realizar consultas• Query - Clase que contiene los parámetros de la consulta a ser ejecutada en el servidor.• QueryTask - Ejecuta las consultas - Devuelve el FeatureSet
    45. 45. Edición• Uso del Feature Services - Mismo modelo que otras web apis - applyEdits()• Demostración del AttributeEditor - Comprobación de los tipos de datos - Entrada de datos - Validación• Utiliza un graphics layer como “sketch” - Utiliza MapOnTouchListener - Implementa eventos de toque y arrastre
    46. 46. Off-Line • Añadir mapa base
    47. 47. Consejos Off-Line• Utilizar en memoria una “feature collection” - Feature set [array de entidades]• Editar entidades : - Métodos addGraphic()/removeGraphic()/applyEdits()• Escribir entidades a/desde disco en json
    48. 48. Ejemplos Off-Line• Jackson JsonParser• Serializar a disco - FeatureSet.toJson(); - String - JsonGenerator.writeRawValue();• Leer desde disco • Pasado a Activity en un paquete • FeatureSet.fromJson(jsonParser,hasSpatialRef);
    49. 49. GPS/COMPASS• Android Location Service • Uso del SensorManager• Añade funciones útiles • Objeto Sensor - Simbolización • TYPE_ORIENTATION - Precisión • getOrientation() - Auto pan • SensorEventListener
    50. 50. HTML5
    51. 51. HTML5 Aplicación Nativa  Aplicación Web• Soluciones 1- Ejecutar Aplicación Web en Navegadores (PC ó Móvil) Resources - No accede a los sensores del dispositivo esridemos 2- Dentro de una Aplicación Nativa Embeber la Aplicación Web a) Código Aplicación Web dentro aplicación Nativa b) Se hace referencia a la Aplicación Web mediante URL 2.1- Incluyendo objeto para ver Web (en android: WebView) HTML5_1 - No Accede a los sensores del dispositivo 2.2- Añadir librería “Phonegap” (Todos los dispositivos) - SI Accede a los sensores del dispositivo pruebaphone1
    52. 52. Api AGOL
    53. 53. Accediendo al portal• Clase Portal - Punto de entrada - Instanciar con credencial o como invitado - Dos casos: - 1.-Cuenta de una organización - 2.-Portal - Si se proporciona credencial se conecta con la cuenta de la organización• Crear Objeto Portal • Con PortalInfo realizar una Query para obtener una Lista de grupos • Bucle por la lista para acceder a cada Grupo • Para cada grupo obtener el título y el thumbnail• Actualizar la View con los resultados
    54. 54. Conclusiones
    55. 55. En resumen…• Plataforma ArcGIS Online• Diversas soluciones - Para cada entorno - Para cada problema - A elección del usuario• API rest de ArcGIS Server como centro de todo• Nuevo Kit Desarrollo ArcGIS Runtime SDK• Novedad Runtime SDK Android
    56. 56. ¿Alguna pregunta?Javier Abadía Miranda javier.abadia@esri.esJose Antonio Anta Viguera: joseantonio.anta@esri.es

    ×