Programming patterns in ArcGIS Runtime include the following patterns, which are discussed in this chapter:
- Loadable pattern for asynchronous resources—Use the
LoadableAPI to load metadata asynchronously for maps, layers, and other resources to do such things as monitor the load status of the resource, handle concurrent and repeated requests to load the resource, cancel a load, retry to load if previous attempts failed, and handle circumstances such as network outages or service interruption.
- Tasks and jobs—ArcGIS Runtime leverages the use of tasks and jobs to perform work asynchronously for potentially long-running operations. Examples include Geocode and search, Route and directions, and Utility network analysis.
- Performance considerations—Decisions you make when choosing things like rendering mode and scale range may have an effect on your app's performance.
- Options for handling device configuration changes—Android apps must handle changes in device configuration that can happen at runtime, for example, screen orientation change, keyboard show or hide, or a change in language setting.
For a description of offline patterns, see Offline maps, scenes, and data in the Offline maps, scenes, and data chapter. Which offline pattern you choose determines whether or not your users can define their own map area, and, if they are editing, how multiple editors will sync their edits back to a web map or back to a branch version.