Writing your first Application for ArcGIS Runtime SDK for ios and Android Aditya Mehta & Thomas Binu, GISTEC
Agenda The ArcGIS System for Mobile Native Applications ios Runtime SDK Display Maps Perform Analysis Visualize Results Q&A
ArcGIS : A Complete Geographic information System
Native Applications and Runtime SDKs
Native Applications and Runtime SDKs
Native Applications Advantages of Native Apps Access to native resources such as Calendar Distribution via App Store Better Performance and native look and feel. Disadvantages Time and Effort to write and maintain individual codebase.
Pre-requisites You will need an Intel Based Mac running OSX Lion (10.7.4) or Mountain Lion (10.8.x) Enroll in ios Developer Program Standard/Company : App Store Distribution Enterprise : In-House Distribution Download the Latest Xcode IDE from the Mac App Store.
Pre-requisites (Contd.) Download & Install the latest ArcGIS Runtime SDK for ios v 10.1.1 Major upgrade from v 2.3.2 In-sync with the version numbers for ArcGIS Runtime SDK for ios, Android, Java SE, WPF reflecting commonality across the Runtime SDKs
Configuring a Project Demo http://developers.arcgis.com/en/ios/
Power of the API Display Maps Perform analysis Visualize results Collect Data Access Online content ArcGIS online Enterprise servers
ArcGIS Runtime SDK for ios
ArcGIS Runtime SDK for ios Build Native applications using Objective C iphone 3GS / 4 / 4S / 5, ipod Touch, ipad and ipad mini V 10.1.1 supports ios 5 and higher.
Displaying Content on a Map UIComponent : AGSMapView Responds to gestures Pinch & Tap to Zoom Drag to pan Tap and hold to Magnify Displays device location Auto Panning for vehicle or compass navigation. Wrap Around the Map
Displaying Content on a Map Add a map view to the User interface using the interface builder You can also add it programmatically.
Adding Content to Map Mashup basemap & operational layers Tiled Layer Service from ArcGIS server Dynamic Layer Service from ArcGIS Server Bing, Openstreetmap WMS Open Webmaps ArcGIS Online On-premise Portals
Adding Content to Map Adding Tiled Map Service Layer to the Map
Respond to events through Delegates Map Delegate has the following events: Layer Events (AGSLayerDelegate) Map loaded, failed to load Layer Loaded, failed to load Touch Events(AGSMapViewTouchDelegate) Tap, tap and Hold Move Tap and Hold Callout Events (AGSMapViewCalloutDelegate & AGSCalloutDelegate) Did show callout, should show callout Did click accessory button
Respond to Map Touch Events 1. Adopt the delegate Protocol 2. Implement the protocol Methods 3. Set the Delegate
ADDING A MAP AND MAPVIEW DELEGATE DEMO
Using Tasks Performing Analysis Query, Identify Query for features on the map Geoprocessing Task Spatial analysis using GP tools and models Locator Geocode and reverse Geocode
Performing Analysis Network Analysis Point-to-point and multipoint routes Service Areas based on drive times Closest facility for an incident
Common Pattern for using Tasks Adopt the Task Delegate Protocol Implement the protocol Methods
Set Delegate Instantiate the task Perform Operation
Visualizing Results Graphics Layer Collection of Graphics Geometry = Graphic + Symbol
Visualizing Results Graphic can contain Attributes Information about attribute Info Template Which attributes to display in the callout
Visualizing Results
Visualizing Results Callout Displayed on user Tap on the Graphic Content Title & Detail Image Accessory button Custom UI View
Adopt the delegate protocol Visualizing Results Implement the delegate protocol methods Set the delegate on the graphic
Performing Analysis and Visualizing Results
Thank You Aditya Mehta aditya.mehta@gistec.com Uiaditya