Developers

Welcome to ArcGIS Runtime 100.12

The Runtime team is excited to bring you version 100.12 of the ArcGIS Runtime SDKs. Update 12 delivers a brand new Geotriggers API, an API for working with true curves, and a host of improvements and refinements across the board. Let’s dive right in…

Geotriggers

Geotriggers provide a simple and powerful way to monitor your device’s location and alert you when your device enters or leaves a geographic area (sometimes referred to as geofencing). Geotriggers let you notify customers when deliveries are about to arrive, warn drivers when they have entered a restricted area, warn of impending weather alerts, and so much more.

To create a Geotrigger, you specify 3 components:

  1. A set of fences to monitor.
  2. A “feed” of location updates.
  3. A rule type (e.g. location enters or leaves a fence).

You then create a Geotrigger Monitor, sit back, and wait for events.

At this first release, the feed of location updates can be any Runtime location data source, allowing Geotriggers to act on a device’s current location, a NMEA peripheral, simulated playback of a GPX file, or even your own custom location data source.

Fences can come from a feature table (online or offline, optionally filtered using a where clause and/or an area of interest), a graphics overlay, or can be an individual feature or graphic.

There are a few really cool features included with Geotriggers that are worth knowing about:

Geotriggers provides a simple API, ties in to feature tables and graphics overlays (including automatically handling moving graphics), and provides performance benefits that would have been a heavy lift to code yourself. Even if you’ve already built a geofencing solution with Runtime, take a look at Geotriggers to see if that can help reduce your code maintenance.

This is only the first release of Geotriggers and lays the foundation for some exciting features we’ll be introducing down the line.

True curves

Runtime has always had some support for true curves, but it required densification of geometry and was limited to viewing only.

At 100.11 we introduced the ability to identify, query, and select features with true curves in feature layers, delivered in mobile map packages authored in ArcGIS Pro.  We also improved support for true curves in the Geometry Engine.

Now, at 100.12, we’ve added APIs to create and edit geometries containing true curves. We’ve also added the ability to work with true curves in ArcGIS Enterprise feature services.

Editing a curve's control points

Runtime supports both Elliptic Arcs and Cubic Bezier curves. Geometry Builders can now add and edit curved segments. Note that Sketch Editors don’t yet support editing curves, but if you have built your own geometry editing experience using geometry builders, you can now integrate true curve editing.

True Curve Clients

To help maintain data integrity when editing true curves from ArcGIS Enterprise feature services, the API also includes a property declaring which level of support your Runtime app provides:

The publisher of a feature service in ArcGIS Enterprise (10.6 or later) can specify that only “true curve clients” should be allowed to edit geometry containing true curves. If the service is configured this way, Runtime will require that an app declares itself as a true curves client before it can edit data from this service. Note: if your app declares itself to be a true curve client, it’s still up to you to ensure that any geometry editing code is updated to make use of the new true curve geometry builder APIs.

True curves from services are only supported in online workflows with ArcGIS Enterprise. We aim to improve true curve support in future releases, including offline workflows and sketch editor support.

Mobile geodatabases

100.12 introduces support for mobile geodatabases created in ArcGIS Pro (2.7 or later). These mobile geodatabases support both viewing and editing, and enable new offline editing workflows that don’t require a feature service. You can view mobile geodatabases with a Lite Runtime license, and editing requires a Basic license.

Unlike geodatabases generated and downloaded from a feature service, these don’t contain service item metadata. This means that, similar to working with GeoPackages or shapefiles, you configure symbology and popups when adding the data to a map.

Floor-aware maps

Floor-aware web maps are published by ArcGIS Pro 2.8 using the ArcGIS Indoor information model. Runtime 100.12 introduces support for working with these maps. If a map is floor-aware, you can control which floor is visible using the map’s floor manager. Future releases will bring support for 3D floor-aware scenes, and for packaging floor-aware maps in mobile map packages.

Locator deprecation

New locators were introduced with ArcGIS Pro 2.3 via the Create Locator tool and supported as of ArcGIS Runtime 100.5. These locators consist of a *.loc and *.loz file which are smaller, faster, easier to maintain, and offer consistency across the ArcGIS system. As previously mentioned, Runtime 100.11 was the last release to support classic geocode locators (which do not include a *.loz file) and they will not work with 100.12. Note: this only pertains to use of local locators – there is no change to Runtime support for ArcGIS geocode services.

Other enhancements

For more details on all these new features and enhancements, see the release notes for Android, iOS, Qt, .NET, and Java.

Download and get started

To get 100.12, go to the ArcGIS Developers web site, browse to the ArcGIS Runtime SDK page of your choice and download the SDK. You can also reference the SDK through NuGet, Gradle, Swift Package Manager, 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

Nick Furness

Nick Furness is a Technical Product Manager for the ArcGIS Runtime SDKs, specializing in the ArcGIS Runtime SDK for 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 Runtime SDKs although you might find the odd bit of JavaScript thrown in there.

Connect:

Rex Hansen

Rex Hansen is a Product Manager for the ArcGIS Runtime and Maps SDKs. 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:

Leave a Reply

Please Login to comment

Next Article

ArcGIS Living Atlas News (September 2021)

Read this article