The Road to Runtime. Mark Cederholm UniSource Energy Services Flagstaff, Arizona

Similar documents
Developing Mobile Apps with the ArcGIS Runtime SDK for.net

Developing Qt Apps with the Runtime SDK

Building Java Apps with ArcGIS Runtime SDK

Getting Started with ArcGIS Runtime SDK for Qt. Thomas Dunn & Nandini Rao

ArcGIS Runtime SDK for Java: A Beginner s Guide. Mark Baird JC Malott

ArcGIS Runtime SDK for.net Getting Started. Jo Fraley

ArcGIS Runtime SDK for WPF

ArcGIS Runtime: Styling Maps. Ralf Gottschalk, Daniel Lee, Lucas Danzinger

Getting Started with ArcGIS Runtime SDK for the Microsoft.NET Framework. Morten Nielsen Mike Branscomb Antti Kajanus Rex Hansen

Transitioning to the ArcGIS Runtime SDK for.net. Antti Kajanus & Mike Branscomb

ArcGIS Runtime SDKs Building Offline Apps. Nick Furness

Getting Started with ArcGIS Runtime SDK for Java SE

ArcGIS Runtime SDK for.net Building Apps. Rex Hansen

Building Apps with the ArcGIS Runtime SDK for ios

Esri Developer Summit in Europe Building Applications with ArcGIS Runtime SDK for Java

ArcGIS for Developers: An Introduction. Moey Min Ken

Working with Feature Layers. Russell Brennan Gary MacDougall

ArcGIS Runtime SDK for.net Building Apps. Antti Kajanus David Cardella

Building Android Apps Runtime SDK for Android

Building Applications with the ArcGIS Runtime SDK for WPF

An Introduction to GIS for developers

Getting Started with the ArcGIS Runtime SDKs. Dave, Will, Euan

An introduction to ArcGIS Runtime

ArcGIS Runtime SDK for.net: Building Xamarin Apps. Rich Zwaap Thad Tilton

ArcGIS Runtime: Building 3D Apps. Rex Hansen Adrien Meriaux

ArcGIS Runtime: Working with Maps Online and Offline. Will Crick Justin Colville [Euan Cameron]

Getting Started with ArcGIS Runtime SDK for ios and OS X. Divesh Goyal & Mary Harvey

Sharing Web Layers and Services in the ArcGIS Platform. Melanie Summers and Ty Fitzpatrick

ArcGIS Online: Three-and-a-Half Ways to Create Tile Layers. Eric Anderson & Adam Eversole Esri Support Services

Building WPF Apps with the new ArcGIS Runtime SDK for.net. Antti Kajanus Mike Branscomb

Introduction to ArcGIS API for Flex. Bjorn Svensson Lloyd Heberlie

Collector for ArcGIS Preparing for and Working in a disconnected environment

ArcGIS Apps for the Mobile Worker. Presented by: Sue Enyedy-Goldner

ArcGIS Apps for the Mobile Worker. Presented by: Sue Enyedy-Goldner

Getting Started with ArcGIS for Server. Charmel Menzel and Ken Gorton

Setup Guide for Op Tracker

ArcGIS Apps for the Mobile Worker. Presented by: Sue Enyedy-Goldner

Navigator for ArcGIS an Introduction

ESRI Technology Update. Joe Holubar Larry Young

Getting Started with ArcGIS Runtime. Jeff Shaner David Cardella

Hit the Ground Running. ArcGIS Runtime SDK for Android

Developing Add-Ins for ArcGIS Pro (.NET) Toronto Esri Canada UC Presented by: Gandhar Wazalwar & Kern Ranjitsingh October 11, 2018

Introduction to Geodatabase and Spatial Management in ArcGIS. Craig Gillgrass Esri

Desktop Mapping: Creating Vector Tiles. Craig Williams &

ArcGIS Runtime SDK for Qt: Building Apps. Koushik Hajra and Lucas Danzinger

Enabling High-Quality Printing in Web Applications. Tanu Hoque & Craig Williams

ModelBuilder: An Introduction. Kevin Armstrong

How to Create a Tile Package

Best Practices for Designing Effective Map Services

Using Collector for ArcGIS and Operations Dashboard for ArcGIS. Mike Sweeney Esri-Charlotte

ArcGIS Online: Managing Data. Jeremy Bartley Sentha Sivabalan

Collector for ArcGIS. Paul Barker Bert Yagrich

ArcGIS Runtime: Building Cross-Platform Apps. Rex Hansen Mark Baird Michael Tims Morten Nielsen

Enabling High-Quality Printing in Web Applications

ArcGIS Runtime SDK for ios and macos: Building Apps. Suganya Baskaran, Gagandeep Singh

hereby recognizes that Timotej Verbovsek has successfully completed the web course 3D Analysis of Surfaces and Features Using ArcGIS 10

ArcGIS Desktop The Road Ahead. Amadea Azerki

Developing mapping applications with ArcGIS Runtime SDK for ios. Divesh Goyal Eric Ito

ArcGIS Pro Terminology Guide

ArcGIS Pro Terminology Guide

ArcGIS Enterprise: Architecture & Deployment. Anthony Myers

Introduction to Your First ArcGIS Enterprise Deployment. Thomas Edghill & Jonathan Quinn

Desktop Mapping: Creating Vector Tiles. Craig Williams

ArcGIS GeoEvent Server: Making 3D Scenes Come Alive with Real-Time Data

Geo-enable your.net apps with ArcGIS Online and Runtime. Antti Kajanus Thad Tilton

ArcGIS Issues Addressed List

Best Practices for Designing Effective Map Services

Optimizing Field Operations. Jeff Shaner

Using ArcGIS for Server. Javier Abadía, Esri España Peter McDaid, Esri UK

Dynamic Situational Awareness. Through Developer Applications

Enabling High-Quality Printing in Web Applications

What s s Coming in ArcGIS 10 Desktop

Enabling High-Quality Printing in Web Applications. Tanu Hoque & Scott Moore

Developing Cross-Platform Native Apps with AppStudio for ArcGIS. Jo Fraley Erwin Soekianto

Collector for ArcGIS: What s New. Chris LeSueur & James Tedrick

Collector for ArcGIS

Building Geoprocessing Tools with Python: Beyond the Basics. Dave Wynne

Navigator for ArcGIS Presented by

Integrate GIS Functionality into Windows Apps with ArcGIS Runtime SDK for.net

Deploying ios Apps. Al Pascual

What s New in Desktop 10.1

What s New for Developers in ArcGIS Maura Daffern October 16

Extending ArcGIS for Server. Jon Satchwell, Esri Switzerland Cédric Despierre Corporon, Esri France

3D in the ArcGIS Platform. Chris Andrews

ArcGIS Runtime: Building Cross-Platform Apps. Mike Branscomb Michael Tims Tyler Schiewe

Cartographic Techniques and Representations

Advances in GIS help create Smarter Communities

Bringing your Data to Life in the ArcGIS API for JavaScript: Vector Tiles. Craig Williams &

Python: Beyond the Basics. John Lam Esri China (Hong Kong) Richard Chau Esri China (Hong Kong)

Developers Road Map to ArcGIS Desktop and ArcGIS Engine

Enabling High-Quality Printing in Web Applications. Tanu Hoque & Jeff Moulds

Python Map Automation Beyond the Basics of arcpy.mapping

Designing and Using Cached Map Services

Product-Specific Terms of Use

Introduction to ArcGIS Server 10.1

ArcGIS Enterprise: An Introduction. Philip Heede

ArcGIS Apps: An Overview

ArcGIS Runtime SDK for Android An Introduction. Xueming

Creating Geoprocessing Services and Web Tools. Darren Baird, PE, Esri

What should y you expect in this session? Basic to advanced topics Outline What is map caching? Why should I cache? Caching workflow How to create a c

Transcription:

The Road to Runtime Mark Cederholm UniSource Energy Services Flagstaff, Arizona

A Brief History of Field Apps at UniSource

ArcExplorer Free Users can customize map symbology No GPS No Editing No custom functionality No longer supported (replaced by ArcGIS Explorer) 2:42:02 PM

ArcReader Free Users cannot customize symbology No out-of-box GPS No out-of-box editing Can add custom functionality Limited [and shrinking] use of ArcObjects

ArcGIS Runtime Free or moderate cost GPS Offline editing and synchronization Software Development Kit

Roads to Runtime Esri ready-to-use apps: Collector, Workforce, Survey123 RTReader* AppStudio [Runtime SDK for Qt] Build it yourself: Android, ios, Java,.NET, OS X, Qt, Xamarin *Available at ArcGIS Online

Quartz Release Improved, standardized core functionality across all platforms Complex vector symbol support Mobile Map Package Raster datasets Utility network Currently in Beta

Demo

ArcGIS Runtime SDK for.net [10.2.7]: What can you do right now?

Basic Licensing [Free!] Access web services Access local data: Runtime geodatabases Tile caches and packages Shapefiles GPS location display & capture Editing via feature services

Runtime Geodatabases Open very quickly Simple features, geolocators, routing networks (no utility network yet) Attachments and related tables Symbol limitations: Multilayer marker symbols are rasterized Line marker symbols not supported Cannot symbolize on multiple fields

Out-of-box GPS Support Requires an installed location provider: [Custom code required for other types of devices]

Registering a Basic License

Standard Licensing Sync framework: offline editing and synchronization Local server: map packages and geoprocessing Offline routing, geocoding Cheaper than ArcGIS Engine

Sync Framework Sync-enabled Feature Service Runtime GDB

Why use the Sync Framework? Robust, full-featured solution Fully supported by Esri Custom Solutions XML, JSON, shapefiles Search for examples, libraries Use at your own risk

Local Server Map or Geoprocessing Package Mini ArcGIS Server Map or Geoprocessing Service Runtime Client

Why use Local Server? File geodatabases Complex vector symbols Annotation Network tracing [Geoprocessing tool] BUT: services take time to fire up

How to Get Standard Licensing: 1 Use ArcGIS Online or Portal for ArcGIS to license your app if your app will be connected to ArcGIS Online or your portal at least every 30 days.

SaaS is the new COM Everyone is scrambling to implement it Twenty years from now*, everyone will realize what an incredibly bad idea it was *probably a lot sooner

Cloud / Named User Model: Risks

How to Get Standard Licensing: 2 Obtain a license code by contacting the Esri office that serves you. You can also obtain a client ID from this Esri office if you don't have access to an ArcGIS for Developers account.

How to Do it Yourself Download Runtime for WPF (10.2.5) https://developers.arcgis.com/downloads/ Run SoftwareAuthorizationRT.exe Supply your authorization code for purchased licenses: RUD--------- (my.esri.com) Use LicenseViewer.exe to grab the license string

Tips, Tricks, and Caveats

ArcGIS Desktop: Creating Runtime Content ArcGIS 10.2.1 ArcGIS 10.3.1 ArcGIS 10.4.1 Runtime GDBs Fails Yes, but with blank GlobalIDs Yes, but with blank GlobalIDs Tile Packages (TPKs) Fails (CustomTPK works) Map Packages (MPKs) Requires hotfix for referenced data* **CRASH!** Geoprocessing Packages (GPKs) GPKs don t work *QFE-1031-DT-313852

Runtime Content MyContent basemap BaseMap [Tile Cache or TPK] Data mycontent.geodatabase [Runtime GDB] Tile cache and Runtime GDB must be same projection

Creating Runtime Content [ArcMap] [Or use Create Runtime Content geoprocessing tool]

Problems with Out-of-Box Runtime Content Esri basemaps are not supported GlobalIDs are blank 10.4.1: Display fields are not honored QueryRelatedAsync does not support ObjectID relationships [RTReader uses a workaround]

Creating an ESRI Basemap: ExportTileCacheTask Extracts a tile package (TPK) from a map service Same projection and tiling scheme as the service uses [Web Mercator, ArcGIS Online] Create a Runtime app to execute this task, or use Python to call REST API Sample code: Python script

Creating an ESRI Basemap: Custom TPK Creator Python tool compatible with ArcGIS Desktop and Pro [Desktop is recommended*] AOI feature class determines spatial reference and extent(s) By default, visible at > 1:10,000 Available at ArcGIS Online *ArcGIS Pro BUG-000099288

Creating a Runtime GDB: GeodatabaseSyncTask Create a feature service with extract capabilities [data must be compatible with sync framework] SyncModel = null GenerateGeodatabaseAsync Create a Runtime app to execute this task, or use Python to call REST API Sample Code: Python script

Creating a Map Package Allows data to be updated separately from package

Creating a Geoprocessing Package Can use Python tool or model Do not explicitly reference data, except for schema Include a nullable parameter to generate empty results For fastest performance, return object IDs instead of features Arcpy.mapping not supported Not all geoprocessing functionality is supported. For a complete list, see https://developers.arcgis.com/net/desktop/guide/ local-server-geoprocessing-tools-support.htm

Runtime vs. ArcObjects No out-of-box components: TOC, Identify, Find, Legend, Layout, etc. Toolkit and examples available at Esri @ GitHub RTReader replicates much of ArcReader s functionality

Runtime vs. ArcObjects: Network Tracing Can be accomplished in Runtime using the Trace Geometric Network geoprocessing tool However, barriers disable an entire complex edge feature instead of just the sub-edge: BUG-000098301 Sample code

Runtime vs. ArcObjects: Symbology Feature Layers [Web or Runtime GDB]: get or set Renderer SimpleRenderer, UniqueValueRenderer, ClassBreaksRenderer, TemporalRenderer, DictionaryRenderer Map Packages: Dynamic Layers [difficult to work with]

Annotation Only supported in Map Packages Workaround: convert to lines and use labeling Sample code

Extending Runtime Extensibility Framework: allows creation of configurable, extendable, MVVM apps View assemblies contain views Extensions contain models, behaviors, and other code XML configuration ties everything together RTReader uses it

Runtime Resources ArcGIS for Developers: developers.arcgis.com Esri @ GitHub [github.com/esri] arcgis-toolkit-dotnet arcgis-runtime-samples-dotnet arcgis-runtime-demos-dotnet

Sample Code Python: TPK download Python: Runtime GDB download Python/.NET: Network tracing Python/.NET: Annotation to labels See website for other examples, including latest code for RTReader and Extensibility Framework

Questions? Mark Cederholm mcederholm@uesaz.com This presentation and sample code may be downloaded at: http://www.pierssen.com/arcgis/runtime.htm