The ArcGIS Maps SDKs team is excited to announce version 200.0 of the ArcGIS Maps SDKs for Native Apps (previously known as ArcGIS Runtime SDKs).
This release continues to deliver on the same core foundation that has powered the 100.x SDKs for the last six years. It marks a new chapter for the SDKs with updates to make the most of today’s developer tools and technologies, and to provide a foundation for the great new functionality we have planned.
New names, same SDKs
The 200.0 release coincides with a renaming of the ArcGIS Runtime SDKs to the ArcGIS Maps SDKs for Native Apps. This is part of a larger effort (described in this blog post) to better reflect the common purpose and capabilities of our client SDKs, as well as make them easier to discover.
If you’re currently working with the ArcGIS Runtime SDKs, then read on to learn more about the latest updates to the SDKs.
New developer technologies
In the six years and 16 releases since the introduction of the 100.x ArcGIS Runtime SDKs, developer technologies have evolved, updated, and grown more sophisticated and refined. Our SDK teams took a step back to consider how to take full advantage of new language features, frameworks, and paradigms, and give you the best possible foundation for building apps today and in the years to come.
The 200.0 releases of the ArcGIS Maps SDKs for Native Apps deliver the same functionality, ArcGIS integrations, and usage patterns as the 100.x SDKs, but honed to the latest developer tooling provided by Apple, Google, Microsoft, Qt, and Java. To accommodate the latest developer tooling we’re updating the .NET, Qt, and Java SDKs and are releasing two entirely new Swift and Kotlin SDKs.
Let’s take a look at the changes delivered with each SDK…
ArcGIS Maps SDK for .NET
ArcGIS Maps SDK for .NET 200.0 adds support for .NET MAUI, .NET 7, and full ARM64 support on Windows. .NET MAUI is Microsoft’s new cross-platform technology taking the baton from Xamarin for building modern cross-platform applications for iOS, Android, Windows, and macOS using Mac Catalyst.
ArcGIS Maps SDK for Qt
The ArcGIS Maps SDK for Qt supports Qt 6, the latest major version of the Qt framework and the future for Qt development. Qt 6 delivers new language features, as well as support for newer compilers, platforms, rendering APIs, and more.
We’ve also added macOS ARM support, enabling apps natively target M1, M2, or Intel macOS architectures via universal libraries.
ArcGIS Maps SDK for Java
ArcGIS Maps SDK for Java adds support for the Java Platform Module System (JPMS).
Improving support for JavaFX, we’ve added JavaFX properties to MapView and SceneView and all Loadable classes. We’ve also added support for the JavaFX Color class. Together these make it easier to write code that binds to properties, and create UI that automatically reflects property changes, while reducing code and encouraging modern Java coding patterns.
Two New SDKs, in Beta
We also added two new SDKs for Swift and Kotlin at 200.0. These replace the 100.x SDKs for iOS and Android respectively. Although they’re built on the same C++ Runtime Core that all 100.x and 200.x SDKs are built on, these two are built from the ground up to be first class Swift and Kotlin libraries.
ArcGIS Maps SDK for Swift
ArcGIS Maps SDK for Swift replaces the 100.x ArcGIS Runtime SDK for iOS as a Swift-first SDK with out-of-the-box support for features like Swift UI, Swift Concurrency, default values, enumerations with associated values, and native Swift collections.
Because this is an entirely new SDK with Swift and Swift UI paradigms replacing Objective-C and UIKit ones, some rewriting of your existing apps will be required when migrating from the ArcGIS Runtime SDK for iOS.
The ArcGIS Maps SDK for Swift 200.0 release is a beta release. We intend to deliver the first full production release of the ArcGIS Maps SDK for Swift at 200.1 in the April 2023 timeframe. Most of the planned 200.1 functionality is already available in the 200.0 beta, but we still have a few areas of the SDK to finish up.
ArcGIS Maps SDK for Kotlin
ArcGIS Maps SDK for Kotlin replaces the 100.x ArcGIS Runtime SDK for Android as a Kotlin-first SDK with out-of-the-box support for features like coroutines, flows, default parameters, higher-order functions, and null safety.
Because this is an entirely new SDK with Kotlin paradigms replacing Java ones, some rewriting of your existing apps will be required when migrating from the ArcGIS Runtime SDK for Android.
The ArcGIS Maps SDK for Kotlin 200.0 release is a beta release. We intend to deliver the first full production release of the ArcGIS Maps SDK for Kotlin at 200.1 in the April 2023 timeframe. Most of the planned 200.1 functionality is already available in the 200.0 beta, but we still have a few areas of the SDK to finish up.
After the 100.15 long-term support release and its commitment to bug fixes and stability, the ArcGIS Maps SDK teams are back to delivering new functionality. Although the bulk of the new capabilities in the 200.0 release focus on updated support for developer tooling, here is some of the new functionality we’ve included:
Offline utility network tracing
ArcGIS Maps SDKs for Native Apps can now execute on-device utility network traces in a fully disconnected environment. Upstream, downstream, connected, and subnetwork traces are supported.
Offline tracing requires a mobile geodatabase with full utility network topology, which currently needs to be generated by ArcGIS Pro. Future releases of the Native SDKs will support offline tracing using on-demand offline maps, preplanned offline maps, and geodatabase replicas generated from utility network services.
Edge rendering is a useful part of 3D visualization when dealing with untextured 3D Object Scene layers. Web scenes and web clients have supported this for some time, and the ArcGIS Maps SDKs now honor rendering edges on Android, Windows, Linux, and macOS. iOS support is coming soon.
- Vertical labeling for CJKV characters
- Improved arcade support
- Improved indoor positioning
The 200.0 release of the ArcGIS Maps SDKs for Native Apps lays the foundation for some ground-breaking new capabilities coming in 2023 and beyond. Stay tuned to learn more about them in the coming months. For more details on improvements in 200.0, or more information on migrating from 100.x to 200.x, head on over to the release notes for .NET, Qt, Java, Kotlin, and Swift.
Download and get started
To get your hands on version 200.0, go to the ArcGIS Developers web site, browse to the ArcGIS Maps SDK page of your choice and download the SDK. You can also reference the SDK through NuGet, Gradle for Java or Kotlin, or Swift Package Manager. If you’re new to developing with the ArcGIS Maps SDKs for Native Apps, each SDK (.NET, Qt, Java, Kotlin, and Swift) has rich guide documentation, API Reference, Tutorials, and samples. Simply sign up for a free ArcGIS Developer account and you’ll be able to access everything you need to develop your app.
One more thing…
With the first production release of version 200.0 of the .NET, Qt, and Java SDKs, and the first public beta release of the Kotlin and Swift SDKs hosted on the ArcGIS Developer site, we plan to close the ArcGIS Runtime SDK 200.0 Beta program by the end of the year. We’d like to thank those of you who participated in the program and provided valuable feedback in our effort to deliver 200.0.