10.2.5: Introduction
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Properties Macros Pages

ArcGIS Runtime SDK for iOS provides an Objective-C API for developers that allows you to add mapping and GIS functionality to your iPhone, iPod touch, and iPad applications. Even though the API is developed in Objective-C, you can use it in Swift because Apple provides interoperability between Objective-C and Swift.

The API leverages functionality provided by ArcGIS Online and on-premise ArcGIS Servers through REST web services. The API includes a map component, a variety of layers and tasks. The map component displays map content from layers or webmaps, which in turn rely on backing map services from ArcGIS Server or other geospatial technology such as Bing, OpenStreetmap, OGC WMS, OGC WMTS and so on. You can also add Graphics on the map to display your own locations of interest. Tasks provide functionality such as identifying features on a map, querying features given some criteria, finding addresses, running geoprocessing jobs, performing network analysis such as routing, etc.

The API allows you to work with local geographic data. You can use tile packages to display basemaps, locators to find addresses, network datasets to compute routes, and sqlite geodatabases to view, edit, and sync vector features.

The API is provided as a framework called ArcGIS. Classes and functions defined in this framework begin with the prefix AGS. This prefix acts as a namespace and prevents naming conflicts with classes defined in your application or other frameworks you use.

You need to use a minimum of iOS 7 SDK to build your applications. Also, the applications you build will require a minimum of iOS 6 running on the device.

Setting up your XCode project using CocoaPods

If you're already using CocoaPods, setting up your project to use ArcGIS is really easy.

  • Add pod 'ArcGIS-Runtime-SDK-iOS' to your Podfile.
  • Run the command pod install on the Podfile using the Terminal application.
  • Open the project workspace (*.xcworkspace file) and add the #import <ArcGIS/ArcGIS.h> statement to any class files where you wish to use the API.

Setting up your XCode project manually

Download the SDK from https://developers.arcgis.com/ios . Run the installer, this will install the ArcGIS framework under ${HOME}/Library/SDKs/ArcGIS/iOS.

The ArcGIS framework in-turn depends upon a number of iOS frameworks such as CoreGraphics, CoreLocation, and others. You need to ensure that your project's Enable Modules (C and Objective-C) setting is set to YES. This will ensure that all the required frameworks are correctly referenced by your project.

Set the project's Frameworks Search Paths setting to include ${HOME}/Library/SDKs/ArcGIS/iOS/ , and the Other Linker Flags setting to include the following entries: -ObjC -framework ArcGIS -l c++

Add the ArcGIS.bundle file found under ${HOME}/Library/SDKs/ArcGIS/iOS/ArcGIS.framework/Versions/Current/Resources to your project. This bundle file contains the resources (images, localized strings, etc) used by the API.

Finally, add the #import <ArcGIS/ArcGIS.h> statement to your class files where you wish to use the API.

Third party libraries

The ArcGIS library depends upon and already includes the following third party libraries -

The functions/classes in these libaries have been renamed/namespaced to avoid conflicts with other versions of the same libraries you may have in your project.