ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile...

42
ArcGIS Runtime: Migrating from ArcGIS Engine Rex Hansen

Transcript of ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile...

Page 1: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

ArcGIS Runtime:Migrating from ArcGIS EngineRex Hansen

Page 2: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Thank You to Our Sponsors

Page 3: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Migrating from ArcGIS Engine to ArcGIS Runtime

• ArcGIS Runtime API: new and evolved workflows on all platforms

Shared workflows, any platform, any device

Windows Linux Android iOS macOS

ArcGIS Runtime

ArcGIS Engine

Windows Linux

Page 4: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Migrating to ArcGIS Runtime

• ArcGIS Runtime API: new and evolved workflows on all platforms• Local Server: additional support and extensibility on Windows and Linux

Shared workflows, any platform, any device

Windows Linux Android iOS macOS

ArcGIS Runtime

ArcGIS Runtime

Local Server

ArcGIS Engine

Windows Linux

Page 5: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Runtime functionality added in 2017 - 2018• v100.2 – December 2017

- Layers: ENC, WMS- Tables: Shapefile, Geopackage- Raster: Geopackage- Export Vector Tile Packages- Offline maps preplanned workflow - Dynamic feature layer rendering- Line of Sight- Viewshed- Service Area (local)- Closest Facility (local)- SketchEditor enhancements- Statistics Queries- Transformations- Transactional editing- Time

• v100.2.1 – February 2018- Raster datasets and tile packages in

mobile maps packages- SceneView WGS84 basemaps- WMS versions <1.3

• v100.3 – July 2018- Web Scenes- Selection/Identify on Scene Layers- WMS – time and styles- App-6(B) (D)- Query support for Map Image sublayers- Improved labeling control- Measure distances in scenes

• v100.4 – Oct 2018- KML- MrSid- Optimized on-demand

offline workflows

Page 6: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Workflows

Page 7: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Migrating to ArcGIS Runtime

.NET iOSAndroidQt Java

ArcGIS Runtime

macOS

Analysis

3D

Routing & Geocoding

Editing

Maps & Data

Page 8: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Migrating to ArcGIS Runtime

.NET iOSAndroidQt Java

ArcGIS Runtime

macOS

Analysis

3D

Routing & Geocoding

Editing

Maps & Data

Page 9: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Maps: Migrating to ArcGIS Runtime

• ArcMap .mxd• Map Package .mpk

• Online Maps• Mobile Maps

Page 10: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Web Maps

https://developers.arcgis.com/rest/

• Read/write in Online, Portal, Pro, and Runtime• Webmap spec• Online layers & embedded content

- Feature Collection- Feature Layer- Map Image Layer- Tiled Layer- Vector Tiled Layer

• Include app configuration properties- Search, measure, routing, location, editable layers

Page 11: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Mobile Maps

http://esriurl.com/CreateOfflineMap

• Maps from ArcGIS Online and Pro• Mobile Map Package .mmpk• Based on web map spec• .mmpk Includes layers and data

- Feature layers and tables- Raster datasets- Tile layer (as a .tpk)- Vector tile layer (as a .vtpk)

• From ArcGIS Pro can include locators and networks

- Geocoding and routing offline

Page 12: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Data: Migrating to ArcGIS Runtime

• Shapefile• File Geodatabase• ArcSDE• Raster• Feature Service• Map Service• Image Service• WMS

• Shapefile• Mobile Geodatabase• Raster• Feature Service• Map Service• Image Service• WMS• WMTS

Page 13: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Data: Migrating to ArcGIS RuntimeMobile Geodatabase

• Mobile Geodatabase (.geodatabase)• Based on SQLite

- Cross-platform, portable, efficient • Contains schema, data, and rendering information• ArcGIS Online – on-demand / pre-planned workflow

- Mobile map packages reference sync-enabled feature services

• Feature Service – .geodatabase file - Sync-enabled

• ArcGIS Pro – Mobile Map Package .mmpk- Read-only

http://esriurl.com/CreateOfflineMap

Page 14: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Data: Migrating to ArcGIS Runtime

• ArcGIS Runtime supports direct read of many raster formats• Raster renderers applied by the API

- Blend, Colormap, Hillshade, RGB, and Stretch

• Apply functions on the fly- Subset of Image Server raster functions - Mask, Clip, Pansharpen, Raster Calculator…

• Mosaic Datasets- Store, manage, and view collections of raster data as a catalog- Data model implemented in geodatabase- Visualize as a single image- Create in ArcGIS Pro using GP tool- Create ArcGIS Runtime API via API

Raster Data

Page 15: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Data: Migrating to ArcGIS Runtime

http://server.arcgis.com/en/server/latest/publish-services/windows/author-feature-services.htm

• Feature Service• ArcGIS Enterprise and ArcGIS Online• Display, query, and edit data • ArcGIS Runtime API accesses via calls to REST API• Create mobile geodatabases

- Synchronize features, records, attachments

• Simple feature access- No topology, utility network, transportation network

Feature Services

Page 16: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Data: Migrating to ArcGIS Runtime

• Map services - Dynamically renders map images- Preconfigured layers, renderers- Override via DynamicLayer

• Image services- Dynamically access raster imagery- Apply rendering rules

Map Services, Image Services

Page 17: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Migrating to ArcGIS Runtime

• ArcGIS Runtime API: new and evolved workflows on all platforms• Local Server: additional support and extensibility on Windows and Linux

Shared workflows, any platform, any device

Windows Linux Android iOS macOS

ArcGIS Runtime

ArcGIS Runtime

Local Server

ArcGIS Engine

Windows Linux

Page 18: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Maps and Data: Migrating to ArcGIS Runtime

• Map Document• Map Package• Layer file• Layer package • File Geodatabase

• Local Geoprocessing Service• Local Map Service

Page 19: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

.NET Java Qt

Maps: Migrating to ArcGIS Runtime

• ArcMap and Pro packages/layers supported with Local Server• Available on Windows and Linux desktops

- With ArcGIS Runtime SDKs: .NET, Java, and Qt

• Read Map Packages with local map services• Read and manipulate content via local geoprocessing services• Start from Geoprocessing Packages• Create .gpkx files in ArcGIS Pro 2.1/2.2• Create .gpks in ArcMap 10.6.x

Python

Model Builder

ArcGIS Runtime API

Local Geoprocessing

Service

Local Server

Windows Linux

Page 20: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Demo: Local Server

Page 21: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Demo: Local Server

• Scenario- Map and data viewer- Browse for MPK file shared from ArcMap- Replace current map with Map Package- Browse for File Geodatabase - View list of contents- Choose item and add to map

Page 22: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Demo: Local Server – Part I

• Browse for map package (.mpk)• Simple file browser• Local Map Service is created for .mpk file• New ArcGIS Map Image Layer added• New Map is created and layer added

Page 23: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Demo: Local Server – Part II

• Browse for File Geodatabase• View contents and datatype • Choose item• Add as new layer in Map• Approach depends on content• Feature classes, raster datasets, and mosaic datasets

- Can be added to local map service as dynamic layer

• Raster catalog not supported by dynamic layer capability- Use custom Python script to create a new map package containing the raster catalog

Page 24: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Migrating to ArcGIS Runtime

.NET iOSAndroidQt Java

ArcGIS Runtime

macOS

Analysis

3D

Routing & Geocoding

Editing

Maps & Data

Page 25: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Editing: Migrating to ArcGIS Runtime

• Editable data formats- Personal geodatabase- File geodatabase- ArcSDE geodatabases- Shapefiles

• Editable data formats- Feature services- Mobile Map Package- Mobile geodatabase- Feature Collection- Shapefile- Geopackage

Page 26: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Editing: Migrating to ArcGIS Runtime

• Feature service- ArcGIS Enterprise and Online feature services

• Mobile map package- Mobile map packages with sync-enabled mobile geodatabases- Created from feature service with the OfflineMapSyncTask

• Mobile Geodatabase- Sync-enabled mobile geodatabases- Created from feature service with the GeodatabaseSyncTask

• Static feature collection editing- Feature collections (map and item based)

Editable data formats

Page 27: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Editing: Migrating to ArcGIS Runtime

• Simple feature editing- Cannot edit topologies, utility networks, transportation networks

• Simple feature classes• Points, lines, polygons, multipoint• Features, attributes, attachments

Editable content

Page 28: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Editing: Migrating to ArcGIS Runtime

• Start a Transaction (optional)• Create or get a Feature from the Table• Modify Feature geometry, attributes, attachments• Apply Feature edits to Table via async Add, Update, Delete operations• Commit Transaction (if started above)• If editing an online service feature table

- Call ApplyEdits to push edits up to service

• If editing a geodatabase table from an offline sync-enabled geodatabase - Use GeodatabaseSyncTask to sync with service

• If editing a static Feature Collection Table - Saved the map or portal item

Workflow

Page 29: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Migrating to ArcGIS Runtime

.NET iOSAndroidQt Java

ArcGIS Runtime

macOS

Analysis

3D

Routing & Geocoding

Editing

Maps & Data

Page 30: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

3D: Migrating to ArcGIS Runtime

• Scene Service Layers- Publish using ArcGIS Pro- ArcGIS Online- ArcGIS Enterprise

• Scene Layer Packages .slpk- Created using ArcGIS Pro- Use offline

• Elevation services and local raster datasets• Exploratory analysis

- Fast visual analysis - Viewshed, Line of Sight

• Key API types - SceneView, Scene, Surface, ArcGISSceneLayer, SceneSymbol, Camera

Page 31: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Migrating to ArcGIS Runtime

.NET iOSAndroidQt Java

ArcGIS Runtime

macOS

Analysis

3D

Routing & Geocoding

Editing

Maps & Data

Page 32: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Analysis: Migrating to ArcGIS Runtime• Geometry Engine

- Operates on individual geometries- Not bound to data or services- Very efficient synchronous operations- The foundation for many workflows e.g. click > buffer > query > project > display

• Geoprocessing- Local geoprocessing service using LocalServer

- Create geoprocessing package using ArcMap / ArcGIS Pro (v100.3)- ArcGIS Enterprise

- Publish your own services- ArcGIS Online

- Services hosted by esri

• Visualization- Exploratory Analysis (3D), Renderers

Page 33: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Migrating to ArcGIS Runtime

.NET iOSAndroidQt Java

ArcGIS Runtime

macOS

Analysis

3D

Routing & Geocoding

Editing

Maps & Data

Page 34: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Routing & Geocoding: Migrating to ArcGIS Runtime• Routing

- ArcGIS Network Datasets- Specific optimized Network Analysis service types and associated API ‘Task’ types

- Route, Service Area, ClosestFacility- ArcGIS Runtime provides local equivalent

- Route, Service Area, Closest- Packaged into Mobile Map Packages .mmpk with ArcGIS Pro - Oher network analysis types available as Geoprocessing services

• Geocoding- ArcGIS Locators- Published as services (GeocodeServer endpoint)- Packaged into Mobile Map Packages .mmpk with ArcGIS Pro

Page 35: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

UI Components

Page 36: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

UI Components

• APIs include MapView, SceneView, and Callout• ArcGIS Runtime SDK Toolkits provide additional components

- Legend, Table of Contents, TimeSlider, ScaleBar, Compass…

• Open source Github repos• .NET: https://github.com/Esri/arcgis-toolkit-dotnet• Qt: https://github.com/Esri/arcgis-runtime-toolkit-qt• iOS: https://github.com/Esri/arcgis-runtime-toolkit-ios• Java: https://github.com/Esri/arcgis-runtime-toolkit-java• Android: Roadmap• macOS: Not planned

Page 37: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Summary

Page 38: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

ArcGIS Engine product lifecycle

Page 39: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Get Started

1. Login to the ArcGIS for Developers web sitehttps://developers.arcgis.com

2. Download ArcGIS Runtime SDKs- ArcGIS Runtime SDK for .NET, Java or Qt

- ArcGIS Runtime Local Server SDK

3. Explore documentation- Guide doc for Local Server geoprocessing tools

- 30% coverage with ArcGIS Desktop

- Tell us what you need!

4. Discover DevLabs, samples, example apps - Demonstrates Runtime capabilities, patterns and best practices

-

Page 40: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Standard• License Key

• All capabilities of Basic• Access to additional data

• Shapefiles• GeoPackages• ENC layers• KML (file)• Local raster layers• Use of raster functions• Local raster elevation sources

• Visual analysis• Line of sight• Viewshed

• Local Server• Feature services

• Edit file geodatabases• GP services

• Subset of Desktop basic tools

Advanced• License Key

• All capabilities of Standard• Local Server

• Feature services• Edit enterprise geodatabases

• GP services • Subset of Desktop standard

and advanced tools

Basic• Named User – Level 2• License Key

• All capabilities of Lite• Edit features in mobile geodatabases

or private feature services• Synchronize edits to features and

attachments from a mobile geodatabase to a feature service

• Add, update, delete content on portals

Lite• Named User – Level 1 • License Key

• View maps, scenes, layers, packages from the ArcGIS Platform

• Edit features in public feature services.

• Generate a mobile geodatabase from a sync-enabled feature service

• Download updates from a sync-enabled feature service to a mobile geodatabase

• Place finding• Simple and optimized routing• Service areas and find closest

facilities using a network serviceAnalysis Extension

• License Key

• Calculate service areas and find closest facilities using a local network dataset• Local Server GP tools from 3D Analyst, Spatial Analyst, Network Analyst

StreetMap Premium Extensions• License Keys

North America Latin AmericaEurope Middle East and Africa Asia Pacific

ArcGIS Runtime 100.x License Model

* Local server specific features

Page 41: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,

Recent enhancements and road ahead

• Update 3 (100.3) –June 2018- Support for ArcGIS Pro packages

- New tools, based on feedback and demand

• Decoupling versions of Runtime API and Local Server SDK- Local Server SDK to match your ArcGIS Desktop

• Migration workshop

Page 42: ArcGIS Runtime: Migrating from ArcGIS Engine€¦ · Data: Migrating to ArcGIS Runtime. Mobile Geodatabase • Mobile Geodatabase (.geodatabase) • Based on SQLite-Cross-platform,