1 / 34

Developing Offline Apps with ArcGIS Runtime SDKs

Developing Offline Apps with ArcGIS Runtime SDKs. Euan Cameron Justin Colville Will Crick. 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

otis
Download Presentation

Developing Offline Apps with ArcGIS Runtime SDKs

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Developing Offline Apps with ArcGIS Runtime SDKs Euan Cameron Justin Colville Will Crick

  2. 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. ArcGIS Runtime Architecture Smartphones Application Tablets API ArcGIS Core Desktops Local Server Developing Offline Apps with ArcGIS Runtime SDKs

  4. ArcGIS Runtime Architecture Smartphones Application Tablets API Core ArcGIS Desktops Local Server Developing Offline Apps with ArcGIS Runtime SDKs

  5. Demo Offline Capabilities Developing Offline Apps with ArcGIS Runtime SDKs

  6. Maps and Data Developing Offline Apps with ArcGIS Runtime SDKs

  7. 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. From ArcGIS Online and Portal Synchronize Download Author Prepare View Query Analyze Edit Developing Offline Apps with ArcGIS Runtime SDKs

  9. 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. Offline With ArcGIS Server Synchronize Publish Service Download View Query Analyze Edit Author Map ArcGIS Desktop Developing Offline Apps with ArcGIS Runtime SDKs

  11. Offline With Desktop Author Map Provision Prepare Runtime Content View Query Analyze Geocode Directions ArcGIS Desktop Developing Offline Apps with ArcGIS Runtime SDKs

  12. Demo Data Preparation Developing Offline Apps with ArcGIS Runtime SDKs

  13. 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. 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. APIs for Building Offline Apps Developing Offline Apps with ArcGIS Runtime SDKs

  16. Working With Basemaps Offline • ArcGIS Desktop Can Create Tile Caches • Esri Basemaps • http://tiledbasemaps.arcgis.com/… • 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. Demo Taking ArcGIS Online Basemaps Offline Developing Offline Apps with ArcGIS Runtime SDKs

  18. 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

  19. 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

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

  21. Offline and Online Features Layer FeatureLayer FeatureTable Feature GeodatabaseFeatureServiceTable GdbFeature Graphic GeodatabaseFeatureTable Developing Offline Apps with ArcGIS Runtime SDKs

  22. Working With Features • 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 Developing Offline Apps with ArcGIS Runtime SDKs

  23. Demo Offline Features Developing Offline Apps with ArcGIS Runtime SDKs

  24. How Does Sync Work? The Flow of Data Apply response to geodatabase Feature service with sync enabled Retrieve response Upload delta Generate geodatabase enabled for sync Generate delta geodatabase Adds, edits, deletes Developing Offline Apps with ArcGIS Runtime SDKs

  25. 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

  26. Demo Offline Locators Developing Offline Apps with ArcGIS Runtime SDKs

  27. Working With Networks Offline • Prepared for Offline Use Using ArcGIS Desktop • Programming Model Similar to Online Networks • High Performance Developing Offline Apps with ArcGIS Runtime SDKs

  28. Demo Offline Networks Developing Offline Apps with ArcGIS Runtime SDKs

  29. 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

  30. 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

  31. 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

  32. Questions? Developing Offline Apps with ArcGIS Runtime SDKs

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

  34. Developing Offline Apps with ArcGIS Runtime SDKs

More Related