Monitor Download Progress
This guide explains how to monitor download progress to track route-network, map-tile, and overall region’s state. Subsequently, it explains how to use these states to decide when offline routing, offline map display, or the complete offline navigation experience is available.
| State | Recommended UI |
|---|---|
NOT_STARTED | Not started |
QUEUED | Waiting to download |
RUNNING | Show the percentage and a downloading state |
PAUSED | Show a paused state and a “Resume” button |
PARTIAL | Show an incomplete state and a “Resume” button |
FAILED | Show the error and a “Retry” button |
COMPLETED | This subtask is complete |
routeNetwork at COMPLETED means that offline routing is available while mapTile at COMPLETED means that the offline basemap is available.
Show full offline navigation as available only when both - routeNetwork and mapTile are complete.
After an application restart, call initialize() and observe progress again to restore persisted state. Do not create another download task because a screen was recreated. Calling cancel() on the subscription handle removes only that screen's listener but it does not cancel the download.