Presentation is loading. Please wait.

Presentation is loading. Please wait.

Esri UC 2014 | Technical Workshop | Developing Offline Apps with ArcGIS Runtime SDKs Euan Cameron Justin Colville Will Crick.

Similar presentations


Presentation on theme: "Esri UC 2014 | Technical Workshop | Developing Offline Apps with ArcGIS Runtime SDKs Euan Cameron Justin Colville Will Crick."— Presentation transcript:

1 Esri UC 2014 | Technical Workshop | Developing Offline Apps with ArcGIS Runtime SDKs Euan Cameron Justin Colville Will Crick

2 Esri UC 2014 | Technical Workshop | Offline App Capabilities Disconnected Use of the ArcGIS Platform Viewing and Interacting with Maps Querying Data Editing Features - Synchronization Find places and locations Get directions Pre-planned or On-demand Workflows Occasionally Connected Scenarios All Runtime SDKs* Developing Offline Apps with ArcGIS Runtime SDKs

3 Esri UC 2014 | Technical Workshop | ArcGIS Runtime Architecture Application Smartphones Tablets Desktops ArcGIS Local Server API Core Developing Offline Apps with ArcGIS Runtime SDKs

4 Esri UC 2014 | Technical Workshop | ArcGIS Runtime Architecture Application ArcGIS Smartphones Desktops Core Local Server API Tablets Developing Offline Apps with ArcGIS Runtime SDKs

5 Esri UC 2014 | Technical Workshop | Offline Capabilities Demo Developing Offline Apps with ArcGIS Runtime SDKs

6 Esri UC 2014 | Technical Workshop | Maps and Data Developing Offline Apps with ArcGIS Runtime SDKs

7 Esri UC 2014 | Technical Workshop | The ArcGIS Platform – Working Offline Offline Apps Need Maps and Data! All Compute Platforms Support Going Offline - Online and Portal - Server - Desktop New Workflows - Critical for You to Understand These Workflows Developing Offline Apps with ArcGIS Runtime SDKs

8 Esri UC 2014 | Technical Workshop | From ArcGIS Online and Portal Developing Offline Apps with ArcGIS Runtime SDKs Author Prepare View Query Analyze Edit Synchronize Download

9 Esri UC 2014 | Technical Workshop | ArcGIS Online Data Licensing Always Review Data Usage Restrictions Supported Esri Services - Basemaps Esri Services Not Supported Offline - Geocoding - Routing Developing Offline Apps with ArcGIS Runtime SDKs

10 Esri UC 2014 | Technical Workshop | Offline With ArcGIS Server Developing Offline Apps with ArcGIS Runtime SDKs Author Map Publish Service View Query Analyze Edit Synchronize Download ArcGIS Desktop

11 Esri UC 2014 | Technical Workshop | Offline With Desktop Prepare Runtime Content View Query Analyze Geocode Directions Provision Author Map ArcGIS Desktop Developing Offline Apps with ArcGIS Runtime SDKs

12 Esri UC 2014 | Technical Workshop | Data Preparation Demo Developing Offline Apps with ArcGIS Runtime SDKs

13 Esri UC 2014 | Technical Workshop | Mixing and Matching Possible to Take a Hybrid Approach - Online basemaps - ArcGIS Server feature services - Geocoding and routing from Desktop The Hybrid Approach Will Be Common in Your Solutions - Optimize content delivery to match solution Developing Offline Apps with ArcGIS Runtime SDKs

14 Esri UC 2014 | Technical Workshop | Optimizing The Data Provisioning Process Features and Basemap Content - On Demand – Retrieves data from the server when requested - Uses server processing power and bandwidth for every client request - Side-loading - Content created ahead of time and provisioned onto the device - Can help alleviate server load at busy times of the day - Commonly used for basemaps - Can work with feature data if the workflow is right - How often and how many features change on the backend? Networks and Locators - Side-loading is the only option Developing Offline Apps with ArcGIS Runtime SDKs

15 Esri UC 2014 | Technical Workshop | APIs for Building Offline Apps Developing Offline Apps with ArcGIS Runtime SDKs

16 Esri UC 2014 | Technical Workshop | Working With Basemaps Offline ArcGIS Desktop Can Create Tile Caches Esri Basemaps - http://tiledbasemaps.arcgis.com/… http://tiledbasemaps.arcgis.com/ - AGOL basemap group AGOL basemap group ArcGIS Server Tiled Map Services Services Limit Extent - Administrator Sets the Limit - Workable Size - Compression quality - Estimations Consider Reusing Offline Basemaps Developing Offline Apps with ArcGIS Runtime SDKs

17 Esri UC 2014 | Technical Workshop | Psuedo/Code snippets task = new ExportTileCacheTask(url); params = new ExportTileCacheParams(); params.setLevelsOfDetail( [1,2,3,4] ); params.setAreaOfInterest( geometry ); task.estimateTileCacheSize( params); //async task.exportTileCache( params, path ); //async SubmitJob Poll for status Download when complete Some platforms handle partial downloads Developing Offline Apps with ArcGIS Runtime SDKs

18 Esri UC 2014 | Technical Workshop | Taking ArcGIS Online Basemaps Offline Demo Developing Offline Apps with ArcGIS Runtime SDKs

19 Esri UC 2014 | Technical Workshop | Working With Operational Data Offline It is all about the features Read only access Work with Attachments and Relates Edit Features Use Popups Sync Changes with a Server Developing Offline Apps with ArcGIS Runtime SDKs

20 Esri UC 2014 | Technical Workshop | Syncing With a Server Send Edits Versioned Data – download only Per Layer Sync – non versioned data Per Geodatabase Sync – versioned data (download only) Control Over Sync Direction - None - Download changes only - Upload edits only - Download changes and upload edits - bidirectional Developing Offline Apps with ArcGIS Runtime SDKs

21 Esri UC 2014 | Technical Workshop | Generating a Geodatabase and Showing Features GeodatabaseTask Geodatabase GeodatabaseFeatureTable GdbFeature FeatureLayer Layer Graphic Feature fetchFeatureServiceInfo() new GenerateParams(fsInfo) - generateGeodatabase(params) Geodatabase.getSyncParams() - syncGeodatabase() isSyncEnabled() getFeatureTables() hasLocalEdits() createNewFeature() queryRelated() getAttachments() getFields() getFeatures(x,y) selectFeatures() get/setRenderer() hideFeature() geometry() attributes() FeatureTable add() update() delete() query() getFields() Developing Offline Apps with ArcGIS Runtime SDKs

22 Esri UC 2014 | Technical Workshop | Offline and Online Features GeodatabaseFeatureTable GdbFeature FeatureLayer Layer Graphic Feature FeatureTable Developing Offline Apps with ArcGIS Runtime SDKs GeodatabaseFeatureServiceTable

23 Esri UC 2014 | Technical Workshop | A Feature is a Feature - No Difference for Online and Offline - Programming model in general is the same Editing Features is Different - Local Geodatabase saves edits in the database - Feature Service posts edits to the server when you tell it Working With Features Developing Offline Apps with ArcGIS Runtime SDKs

24 Esri UC 2014 | Technical Workshop | Offline Features Demo Developing Offline Apps with ArcGIS Runtime SDKs

25 Esri UC 2014 | Technical Workshop | How Does Sync Work? The Flow of Data Generate geodatabase enabled for sync Feature service with sync enabled Adds, edits, deletes Generate delta geodatabase Upload delta Retrieve response Apply response to geodatabase Developing Offline Apps with ArcGIS Runtime SDKs

26 Esri UC 2014 | Technical Workshop | Life without the feature service table Developing Offline Apps with ArcGIS Runtime SDKs

27 Esri UC 2014 | Technical Workshop | Working With Locators Offline Prepared for Offline Use Using ArcGIS Desktop Programming Model Similar to Online Locators High Performance Developing Offline Apps with ArcGIS Runtime SDKs

28 Esri UC 2014 | Technical Workshop | Locator psuedo code task = new Locator(path); //geocode params.setText(“”); task.findAddress(); //async //reverse geocode task.findLocation(point); Developing Offline Apps with ArcGIS Runtime SDKs

29 Esri UC 2014 | Technical Workshop | Offline Locators Demo Developing Offline Apps with ArcGIS Runtime SDKs

30 Esri UC 2014 | Technical Workshop | Prepared for Offline Use Using ArcGIS Desktop Programming Model Similar to Online Networks High Performance Working With Networks Offline Developing Offline Apps with ArcGIS Runtime SDKs

31 Esri UC 2014 | Technical Workshop | Routing psuedo code task = new RouteTask(path); params = task.retrieveDefaultRouteTaskParams(); params.setStops(NAFeatures); task.solve(); //async Developing Offline Apps with ArcGIS Runtime SDKs

32 Esri UC 2014 | Technical Workshop | Offline Networks Demo Developing Offline Apps with ArcGIS Runtime SDKs

33 Esri UC 2014 | Technical Workshop | App development Killed/exited apps - Hold on to params (or with iOS jobid) and resubmit same job (with use cached job=true) - If job still exists on the server, will not resubmit job - If partial download on disk, will not resubmit job - If error, will resubmit job Backgrounded iOS apps - Go to iOS session! Large data over 3G - Check for wifi access for ExportTilecCacheTask?? Developing Offline Apps with ArcGIS Runtime SDKs

34 Esri UC 2014 | Technical Workshop | Licensing Offline Capabilities for Your Apps Viewing Vector and Raster Data - Basic License Offline Feature Editing, Geocoding and Networks - Standard License Developing Offline Apps with ArcGIS Runtime SDKs

35 Esri UC 2014 | Technical Workshop | Your Common Questions Is Versioned Data Supported? Are Related Tables Supported? What About Attachments? Will My Existing ArcGIS Services Work? How Does Conflict Detection Work? Developing Offline Apps with ArcGIS Runtime SDKs

36 Esri UC 2014 | Technical Workshop | Questions? Developing Offline Apps with ArcGIS Runtime SDKs

37 Esri UC 2014 | Technical Workshop | Thank you… Please fill out the session survey: First Offering ID: 2308 Online – www.esri.com/ucsessionsurveyswww.esri.com/ucsessionsurveys Paper – pick up and put in drop box Developing Offline Apps with ArcGIS Runtime SDKs

38 Esri UC 2014 | Technical Workshop | Developing Offline Apps with ArcGIS Runtime SDKs


Download ppt "Esri UC 2014 | Technical Workshop | Developing Offline Apps with ArcGIS Runtime SDKs Euan Cameron Justin Colville Will Crick."

Similar presentations


Ads by Google