Developers

Announcing ArcGIS Runtime 100.9

We’re pleased to announce that ArcGIS Runtime 100.9 is now available!

Another 4 months and another feature-rich release of ArcGIS Runtime.  Version 100.9, also known as Update 9, continues to improve support for online workflows with utility networks, but also introduces key enhancements to use of features, open data, offline maps, and raster capabilities.  Let’s dig into some details…

Utility network

First, a run down on new capabilities enabled for use with online utility networks.   Two new trace types have been added: loops and shortest path.  Loops are areas of a network where resources can flow in either direction.  They are expected with mesh networks but usually indicate error conditions in radial networks.  Loops can be discovered using a shortest path trace.  A shortest path trace identifies the shortest path between two points using a numeric network attribute or weight, such as length or cost.

You can also filter elements returned from a trace to a specific asset type or output condition.  If conditions are defined, every feature encountered during a trace is evaluated and only elements that satisfy the conditions are included in the trace result.

Use of asset types to filter trace results
Example showing trace results filtered to show assets of type overhead single and three phase switches and cabinet fuses.

Trace results can now contain a union of all geometries of a type returned from a trace.  This provides a more efficient option for displaying trace results on a map instead of iterating through multiple utility elements.

Functions can now be included in a trace configuration and returned with trace results.  Functions allow you to run calculations on network attributes associated with traced features, for example, the sum of the length of all the wire traced.  Several functions can be specified for a trace.  The trace function output gives you the trace function definition (calculation type, network attribute, and so on) as well as the function result.

Version 4 of the utility network adds non-spatial object support which enables use with telecom networks and underground electrical utilities.   Non-spatial tables are now included with network sources and enumerations.

Feature tiles

Feature layers now use tile-based requests to fetch and display features in a map when supported by the feature service.  Feature tiles enable feature layers in ArcGIS Runtime to load faster and return more features.  Feature tiles use a protocol buffer binary format to reduce network latency and advanced HTTP caching semantics to improve performance.  At this release, feature tiles are not used to request features for display in a scene (3D).

Image showing use of feature tiles in ArcGIS Runtime
In this example, a point feature layer from an ArcGIS feature service represents usage of public transport by census tract in the northeast United States. The grid shows tiles defined by ArcGIS Runtime to request data so all features are returned.

Branch versioned feature services

Enterprise geodatabases use versioning to accommodate needs of multi-user editing scenarios and long transactions. Branch versioning uses the Web GIS model to meet those needs via feature services.  ArcGIS Runtime now supports branch versioning workflows through feature services; it can browse the versions available on a feature service, choose a version to connect to or create a new one, and then display features from that version using feature layers.  Edits made to the features in the feature layer are isolated to that version, and protected from changes being made to other versions. ArcGIS Pro can be used to reconcile-and-post changes from different versions at the end of the editing process.

Offline feature-linked annotation

You can now take feature-linked annotation offline from a sync-enabled feature service, add new features, update existing feature geometry and attributes, and view the automatically positioned feature-linked annotation on the map. If you synchronize your changes with the online feature service, the annotation objects will be automatically updated on the server to reflect those changes. Other offline users can then synchronize with the feature service to obtain the updated feature-linked annotation.

Edit feature attributes linked to annotation
This brief example shows how changing an attribute value of a feature linked to an annotation layer changes the annotation text.

OGC API Features 

This release introduces support for OGC API Features, a new, open, multi-part standard for sharing feature data on the Web.  Part 1, or the “Core”, of this standard describes basic capabilities for enabling read-only access to spatial data.  Most of these capabilities are supported in Runtime and accessible through new classes that represent an OGC feature service, feature service info, as well as OGC feature tables and collections.   It is important to note that only manual cache mode is supported at this time, which means a developer must use the Runtime API to query and populate an OGC feature table with features from an OGC API Feature service.

Offline maps 

We continue to deliver a bevy of enhancements to power use of maps and data in offline workflows…

In Update 8 we delivered support for online layers in mobile map and scene packages.   In this release we take that a step further.   You can now take a web map offline and retain layers that reference online services.  When network connectivity is available, your app users can utilize these online services, but if there is no connection, users can keep working with their local content.

A few years ago we introduced support for preplanned workflows to optimize and streamline creating and delivering maps and data for offline use.  A preplanned workflow relies on  map authors to create and publish map areas in ArcGIS Online or ArcGIS Enterprise.  Publishing a map area involves generating and storing new files of map content, such as basemaps and features, for download.   Generating and downloading a map area can take some time.  With this release, before you download the map area, you can now check whether a map area’s publishing process is complete, has failed, or is still in progress.

You can now take a map offline and avoid receiving updates.   This will disable data synchronization on the map’s geodatabases and prevent associated feature services from creating synchronization replicas.  The benefits of this option are that the burden on the feature server is reduced and you will not need to unregister geodatabases when they are no longer required.

Mosaic rules

A mosaic rule defines how the individual rasters are combined into a single mosaicked image. With this release, mosaic rules defined in web maps, web scenes, mobile map packages, and mobile scene packages are honored while rendering image service rasters.  You can also override the default mosaic rules to control how overlapping areas in the mosaic are handled. In addition to how it’s displayed, the mosaic rules may affect values returned when identifying, computing a histogram, or exporting the image.

Platform improvements and changes

New locators were introduced with ArcGIS Pro 2.3 via the Create Locator tool and supported in ArcGIS Runtime 100.5. These locators consist of a *.loc and *.loz file – they’re smaller, faster, easier to maintain, and offer consistency across the ArcGIS platform.  100.9 will be the last release to support classic geocode locators (only *.loc), created in ArcGIS Pro via the Create Address Locator tool.  Note, this only pertains to use of local locators – there is no change to Runtime support for ArcGIS geocode services.

For Runtime developers that use ArcGIS Runtime Local Server, we’ve extended the deprecation of ArcGIS Desktop 10.x packages.   Now, version 100.9 will be the last release to support ArcGIS Desktop 10.x packages (created in ArcMap). The next ArcGIS Runtime Local Server version will require packages to be created with ArcGIS Pro. Note, ArcGIS Runtime Local Server can be used with newer versions of the ArcGIS Runtime SDKs for .NET, Java, and Qt. ArcGIS Runtime Local Server 100.9 is scheduled to be released next month.

In addition to the list above, we’ve introduced many more enhancements (to group layers, navigation, scenes, etc.), continued to fix issues, improve performance, and enrich our integration within the ArcGIS platform.  For more details, see the release notes for Android, iOS, Qt, .NET, and Java.

Download and get started

To get 100.9, go to the ArcGIS for Developers web site, browse the ArcGIS Runtime SDK page of your choice and download the SDK. You can also reference through NuGet, Gradle, or CocoaPods. If you’re new to developing with ArcGIS Runtime and don’t have an ArcGIS Developer subscription, simply sign up for a free account and you’ll be able to access everything you need to develop your app.

About the authors

Rex Hansen is a Product Manager for the ArcGIS Maps SDKs for Native Apps and ArcGIS Maps SDKs for Game Engines. He has over 25 years of experience in GIS, spatial analytics, and computer mapping. Currently, he guides the development of native technologies in the GIS industry to use authoritative geospatial content and analysis in offline workflows, photorealistic experiences, and immersive, extended reality solutions.

Connect:

Nick Furness

Nick Furness is a Product Manager for the ArcGIS Maps SDKs for Native Apps, and Game Engines, specializing in Swift and iOS. He's spent over 20 years working in the GIS space building projects ranging from small mom-and-pop solutions all the way up to enterprise utility and national government deployments. Nick presents at various Esri Developer Summits, the User Conference, and many other events, almost always talking about something to do with the Native Maps SDKs although you might find the odd bit of JavaScript thrown in there.

Connect:

Next Article

Basemap Releases Include Over 300 New and Updated Communities

Read this article