ArcGIS Runtime: Building .NET Apps...WPF UWP iOS Android Internal Public SDK WPF UWP iOS Android...

Preview:

Citation preview

ArcGIS Runtime:

Building .NET AppsRex Hansen

Agenda

• New in 2017-2018

• Architecture

• Resources

• Roadmap for 2018

New in 2017-2018

The road ahead…

• Improved support for Virtual Machines and software rendering

• Visual Studio 2017 integration

• Simpler callout API

• Upcoming features across the Runtime:

- Toolkit out of beta

- Take an entire map offline

- Improved raster support

- Full ArcGIS Server dynamic layer support

- Improved label support

- Coordinate notation formatter

- WMTS, WebTiledLayer, S57 layers

- Related tables and more…

DevSummit DC 2017

What’s new

• v100.1 – June 2017

- Raster on Android and iOS

- Take a map offline

- Related tables

- Image Services

- OpenStreetMap

- Bing

- WMTS

- Camera controllers in 3D

- Labeling

- Service Area (online)

- Closest Facility (online)

- Coordinate Notation

- Map Service DynamicLayer

• 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)

- Statistics Queries

- Transformations

- Transactional editing

- SketchEditor enhancements

- Time

• v100.2.1 – February 2018

- Bug fixes

- Raster datasets and tile packages

in mobile map packages

- SceneView WGS84 basemaps

- WMS versions <1.3

• Patch – February 2018

- ArcGIS Runtime Local Geoprocessing

Service Startup Patch

- Windows 7 SP1

- Windows Server 2008 R2

- Patches:

- Local Server SDK v100.0 – v100.2

- .NET SDK v10.2.7

- Qt SDK 10.2.6

- Java SDK 10.2.4

- WPF SDK v10.2.5

Architecture

What is ArcGIS Runtime SDK for .NET

• Supports:

- WPF

- Windows Universal app (UWP)

- Xamarin Android

- Xamarin iOS

- Xamarin.Forms (Android, iOS, UWP)

• Exact same business logic code for all platforms.

- Use native platform UI framework

- Or use Xamarin.Forms abstraction to share UI logic as well

Installing ArcGIS Runtime SDK for .NET

• NuGet packages

- Xamarin.Android, Xamarin.iOS, Xamarin.Forms (Android, iOS, UWP)

• Visual Studio installation (VSIX) – Windows only

- Templates for each supported platform

- Local NuGet package source

ArcGIS Runtime SDK for .NETArchitecture Diagram

Win32Windows Runtime

iOS Android

ArcGIS Runtime Core (C++)

ArcGIS Runtime SDK for .NET (C#)

.NET Core.NET Framework

WPF UWP iOS Android

Internal

Public SDK

WPF UWP iOS Android Native UI

Common SDK

• Maps, scenes, layers, symbols,

feature data, geocoding, routing,

portal, rasters, offline/syncing,

geometry, geometry engine…

• MapView, SceneView

Common UI

Where all the magic happens

Mono / Xamarin

Interop

Xamarin Forms

OS

ArcGIS Runtime SDK for .NETA simpler view…

Operating System

ArcGIS Runtime SDK for .NET (C#)

WPF UWP iOS

WPF Xamarin Forms

Android

Native UI

Common SDK

• Maps, scenes, layers, symbols,

feature data, geocoding, routing,

portal, rasters, offline/syncing,

geometry, geometry engine…

• MapView, SceneView

.NET

1. Xamarin Forms: a lot of shared code, less control

- UI is defined with a Xamarin flavor of XAML

- Subset of UI elements

- Rendered as native controls for each platform

- Basic cross-platform functionality

2. Xamarin Native: less shared code, more control

- Each UI is created using platform-specific controls

- *.axml (Android), *.storyboard (iOS), *.xaml (UWP)

- User experience is true to the platform

- More platform-specific control

Two approaches for Xamarin development …

<TimePicker x:Name="StartTimePicker"/>

Resources

• ArcGIS for Developers - developers.arcgis.com

- Downloads for all ArcGIS Runtime SDKs

- Doc: Developers guide, API reference, Samples documentation

• Samples - github.com/esri/arcgis-runtime-samples-dotnet

- Source code for all supported platforms

- Xamarin projects: native and forms

• Toolkit - github.com/esri/arcgis-toolkit-dotnet

- UI controls to provide additional functionality

- Compass, Layer legend, Scale line, Symbol display

• Example apps - developers.arcgis.com/example-apps

- Indoor Routing

Demo:

Resourcesdevelopers.arcgis.com

Road Ahead for 2018

• Layers

- Annotation

- WFS

- MrSid

- Group

• Reference scale

• Utility network

• .NET Standard

• ARMv8 Android

• Web scene read/write

• Unified symbology model

- CIM, Web 3D

• Scene layer

- Selection, Identify

- Point cloud

• Scene analysis

- Measure Distance

- View Dome

Download the Esri Events

app and find your eventSelect the session

you attended

Scroll down to find the

feedback section

Complete answers

and select “Submit”

Please Take Our Survey in the Esri Events App

Recommended