Toolkit components that will simplify your iOS app development with ArcGIS Runtime

What's New

v100.15.0 Release


This release updates the code for the ArcGIS Runtime SDK for iOS release v100.15. It includes:

  • Augmented reality (AR) - Remove use of the deprecated ARSCNView.hitTest method. #176
  • Augmented reality (AR) - Fix crash in AR Example. #178.
  • The minimum supported iOS version is now 14.0, to match the Runtime SDK.

ArcGIS Runtime Toolkit for iOS

doc CocoaPods SPM

The ArcGIS Runtime SDK for iOS Toolkit contains components that will simplify your iOS app development. Check out the Examples project to see these components in action or read through the Documentation to learn more about them.

To use Toolkit in your project:

Toolkit Components

  • Augmented reality (AR) - Integrates the scene view with ARKit to enable augmented reality (AR).
  • Bookmarks - Shows bookmarks, from a map, scene, or a list.
  • Compass - Shows a compass direction when the map is rotated. Auto-hides when the map points north up.
  • FloorFilter - Allows to filter floor plan data in a geo view by a site, a building in the site, or a floor in the building.
  • JobManager - Suspends and resumes ArcGIS Runtime tasks when the app is background, terminated, and relaunched.
  • LegendViewController - Displays a legend for all the layers in a map or scene contained in an AGSGeoView.
  • MeasureToolbar - Allows measurement of distances and areas on the map view.
  • PopupController - Display details and media, edit attributes, geometry and related records, and manage the attachments of features and graphics (popups are defined in the popup property of features and graphics).
  • Scalebar - Displays current scale reference.
  • TemplatePickerViewController - Allows a user to choose a template from a list of AGSFeatureTemplate when creating new features.
  • TimeSlider - Allows interactively defining a temporal range (i.e. time extent) and animating time moving forward or backward. Can be used to manipulate the time extent in a MapView or SceneView.


The ArcGIS Runtime Toolkit for iOS has a Target SDK version of 14.0, meaning that it can run on devices with iOS 14.0 or newer.


Swift Package Manager

  1. Open your project in Xcode
  2. Go to File > Swift Packages > Add Package Dependency option
  3. Enter as the package repository URL
  4. Choose version 100.15.0 or a later version. Click Next.

Note: The Toolkit Swift Package adds the ArcGIS SDK Swift Package as a dependency so no need to add both separately. If you already have the ArcGIS SDK Swift Package delete that and just add the Toolkit Swift Package.

New to Swift Package Manager? Visit


  1. Add pod 'ArcGIS-Runtime-Toolkit-iOS' to your podfile
  2. Run pod install. This will download the toolkit and the ArcGIS Runtime SDK for iOS which the toolkit depends upon and then configure your project to reference them both
  3. Add import ArcGISToolkit in your source code and start using the toolkit components

New to cocoapods? Visit


  1. Clone or download this repo
  2. Drag and Drop the arcgis-runtime-toolkit-ios folder into your project through the Xcode Project Navigator pane
  3. Add the ArcGISToolkit library in your app, by adding it to the Frameworks, Libraries, and Embedded Content section of the General pane for your app target. The ArcGISToolkit library contains the ArcGIS Runtime SDK for iOS library, so you don't need to add that separately.
  4. Add import ArcGIS and import ArcGISToolkit in your source code and start using the toolkit components

Note: The manual installation method also allows you to use a local installation ArcGIS Runtime SDK for iOS by making minor edits to the swift package.

Configure API Key

Some of the toolkit components and examples utilize a set of ready-to-use ArcGIS Platform services, including basemaps, and therefore require an API Key to be set in AppDelegate.swift. Please see the setup guide for more information.


Both the Toolkit and Examples app support SwiftLint. You can install SwiftLint from here. It is not necessary to have it installed in order to build, but you will get a warning without it. The specific rules the linter uses can be found in the swiftlint.yml files in the Toolkit and Examples directories.

Additional Resources


Find a bug or want to request a new feature? Please let us know by submitting an issue.


Esri welcomes contributions from anyone and everyone. Please see our guidelines for contributing.


Copyright 2017 - 2022 Esri

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

A copy of the license is available in the repository's LICENSE file.


  • Swift Tools 5.3.0
View More Packages from this Author


Last updated: Mon Mar 20 2023 19:28:03 GMT-0500 (GMT-05:00)